Вопрос № 105161: Добрий день
есть задача на с
написать прогру для вывода значений фаренгейт - цельсий в столбик от 0 до 300 с шагом 10 используя формулу с=5/9*(fahr - 32)
тока условие что подщет должен происнодить в ф-ии celsius
вот что у меня вышло....Вопрос № 105211: Доброго времени суток, уважаемые эксперты:
Подскажите хорошие книжки по среде Borland C++, a по синтаксису С и С++...Вопрос № 105265: Помогите написать програсмму на С++:
В данном предложении заменить каждое слово child словом children.
Спасибо!!!...Вопрос № 105266: Помогите написать программу на С++
Дан файл F, компоненты которого являются целыми числами. Никакая из компонент файла не равна нулю. Файл F содержит столько же отрицательных чисел, сколько положительных. Используя вспомогательный файл H, п...Вопрос № 105271: Здравтсвуйте, многоуважаемые эксперты интересует такой вопрос -> как получить список файлов определенной папки в VisualC++ (без MFC)?...
Вопрос № 105.161
Добрий день
есть задача на с
написать прогру для вывода значений фаренгейт - цельсий в столбик от 0 до 300 с шагом 10 используя формулу с=5/9*(fahr - 32)
тока условие что подщет должен происнодить в ф-ии celsius
вот что у меня вышло....
тока просьба не писать новой програмы а сказать где я ошибся (мне важен не результат а процес)
Функцию celsius нужно сделать от одной переменной:
int celsius(int fahr)
{
return (5.0/9.0)*(fahr-32);
}
Цикл нужно организавать не в celsius, а в main, и поместить вывод в цикл:
void main
{
for (fahr = 0; fahr <= 300; fahr += 10)
printf ("fahr=:%d celsius=:%d
", celsius(fahr));
}
Кроме того, точку с запятой нужно ставить не сразу после цикла, а за оператором, который должен в этом цикле выполняться.
Это всё явные ошибки. Вылавливанием мелочей и шлифовкой программы займусь, если только у Вы сами об этом попросите. Только имейте ввиду, что для тестов я использую Visual C++ 6, и если у Вас другая среда, то могут найтись незначительные расхождения. По поводу любых уточнений пишите в минифорум вопроса или в мою личную почту на РусФаге.
--------- Сомневайся во всём! Реальность часто бывает не такой, как мы о ней думаем.
Ответ отправил: Delph (статус: Студент)
Ответ отправлен: 12.10.2007, 12:07 Оценка за ответ: 5 Комментарий оценки: большое спасибо я понял свои ошибки , больше ничего делать не нуна
Отвечает: Архипов Александр Леонидович
Здравствуйте, Сергей Богданович!
Ошибка здесь есть: на печать выводиться только одна строка, причем последняя. Ведь в функции celsius сначала идёт весь цикл, а за тем ОДИН раз (последний) значения передаются на печать.
Я решил эту задачу (практически не меняя ни чего) следующим образом: цикл перенёс перед печатью, а функция celsius передаёт только результат расчёта (как и требуют того условия задачи). См. приложение.
P.S. Что бы цикл хоть что-то делал не надо ставить двоеточие сразу за ним...
(for (fahr = 0; fahr <= 300; fahr = fahr + 10);)
Отвечает: Попов А.С.
Здравствуйте, Сергей Богданович!
В приложении исправленный листинг (исправлена функция celsius + цикл вывода значений перенесен в main)
Приложение:
Ответ отправил: Попов А.С. (статус: 2-ой класс)
Ответ отправлен: 13.10.2007, 14:18
Вопрос № 105.211
Доброго времени суток, уважаемые эксперты:
Подскажите хорошие книжки по среде Borland C++, a по синтаксису С и С++
Отправлен: 12.10.2007, 16:48
Вопрос задал: Bubu (статус: Посетитель)
Всего ответов: 2 Мини-форум вопроса >>> (сообщений: 1)
Отвечает: Гальцов Андрей Михаилович
Здравствуйте, Bubu!
Здесь есть всё - http://www.softholm.com/books/books.html
Отвечает: Гальцов Андрей Михаилович
Здравствуйте, Предеин Денис Дмитроевич!
Ну тут как и говорил, есть глюки...но чисто по алгоритму думаю сойдёт, если препод нормальный - примет...
Приложение:
--------- Да здравтствует С++!!!...;)
Ответ отправил: Гальцов Андрей Михаилович (статус: 6-ой класс)
Ответ отправлен: 13.10.2007, 01:28 Оценка за ответ: 5 Комментарий оценки: СПАСИБО!!! РАБОТАЕТ!!!
Отвечает: CruelHity
Здравствуйте, Предеин Денис Дмитроевич!
Вот еще один способ если вам конечено интересно!
Если надо, то вам не будет трудностей переделать на BC 3.1 или как там версия!
Если что обращайтесь:-)
Приложение:
Ответ отправил: CruelHity (статус: 1-ый класс)
Ответ отправлен: 13.10.2007, 15:54
Вопрос № 105.266
Помогите написать программу на С++
Дан файл F, компоненты которого являются целыми числами. Никакая из компонент файла не равна нулю. Файл F содержит столько же отрицательных чисел, сколько положительных. Используя вспомогательный файл H, переписать компоненты файла F в файл G так, чтобы в файле G не было двух соседних
компонент с одним знаком.
Отвечает: CruelHity
Здравствуйте, Жилкин Сергей Анатольевич!
Вот пример(это для windows)
/*****
WIN32_FIND_DATA lpFile;
HANDLE hFile;
hFile=FindFirstFile("*",&lpFile);
do{
m_List.AddString(lpFile.cFileName);
}while(FindNextFile(hFile,&lpFile));
/**********
FindFirstFile Находит первый файл
HANDLE FindFirstFile(LPCTSTR lpFileName, //путь с именем файла(ов) который(е) ищем, можно использовать маску (*,?),Можно просто имя файла,тогда будет искать в текуцей директории(для установки и получения директории SetCurrentDirectory и GetCurrentDirectory)
LPWIN32_FIND_DATA lpFindFileData //структура которая будет содержит информацию о файле);
Если произошла ошибка, то функция вернет значение INVALID_HANDLE_VALUE, иначе handle поиска.
//----
Для продолжения поиска необходима функция FindNextFile:
BOOL FindNextFile( HANDLE hFindFile, //handle поиска
LPWIN32_FIND_DATA lpFindFileData //указатель на структуру с информацией о файле);
Если нет ошибок функция возвращает не нулевое значение.
//---
после завершения надо закрыть хендл поиска. в примере нет но это обязательно
FindClose(hFile);
Ну думаю понятно
FindClose(HANDLE hFile);//handle поиска
Ответ отправил: CruelHity (статус: 1-ый класс)
Ответ отправлен: 13.10.2007, 10:04
Отвечает: Aristos
Здравствуйте, Жилкин Сергей Анатольевич!
Первая функция принимает первым агрументом путь с маской для поиска, например "C:\*.*", начинает поиск, возвращает описатель поиска и записывает данные о первом найденном файле в структуру WIN32_FIND_DATA. Вторая продолжает поиск, а третья завершает.
В приложении код, который перечисляет файлы и директории на диске C:. Использованы ANSI версии фукций поиска (и структуры), поэтому в конце названий прибавлена буква A.
Приложение:
--------- нет ничего невозможного
Ответ отправил: Aristos (статус: 8-ой класс)
Ответ отправлен: 13.10.2007, 14:52
Отвечает: Новак Александр Васильевич
Здравствуйте, Жилкин Сергей Анатольевич!
А вот ещё примерчик: