Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 13.02.2013, 00:49   #1
Cynically
Пользователь
 
Регистрация: 05.01.2013
Сообщений: 60
По умолчанию Функции в си.

Привет, парни. Учу си по Кернигану и Ритчи. От меня требовалось сделать задачку по преобразованию температур (из шкалы Цельсия в шкалу Фаренгейтов), да так чтобы преобразование реализовалось функцией.

Мой быдлокод:

Код:
    #include <stdio.h>
     
    #define max 300 /* Верхняя граница */
    #define step 20 /* Размер шага */
    #define lower 0 /* Начальная позиция */
     
    float fahrtocelfun (float fahr);
     
    main()
     
    {
            float f;
           
            for (f = lower; f <= max; f = f + step)
                  printf ("%.2f\n", fahrtocelfun(f));
           
            return 0;
    }
     
    float fahrtocelfun (float fahrengeit)
    {
           
    float c;
           
     c = (5.00/9.00)*(fahrengeit-32.00);
     return c;
    }
Как можно было данную задачу реализовать иначе? Никто из уважаемых не покидает несколько простеньких задач, чтобы закрепить мой небольшой успех в работе с функциями?
Cynically вне форума Ответить с цитированием
Старый 13.02.2013, 02:25   #2
БалаШагаЛ
Форумчанин
 
Регистрация: 11.02.2011
Сообщений: 131
По умолчанию

Иначе можно было без функции просто в параметре printf запись выражение:
printf ("%.2f\n",(5.00/9.00)*(fahrengeit-32.00));
Ну, и 5.00/9.00 тоже вычислить заранее.
a=5.00/9.00;
for (f = lower; f <= max; f = f + step)
printf ("%.2f\n",a*(fahrengeit-32.00));

И, кстати, f = f + step лучше заменить на f+=step

А по поводу задачек, вот книжку держите.
БалаШагаЛ вне форума Ответить с цитированием
Старый 13.02.2013, 11:00   #3
Abstraction
Старожил
 
Аватар для Abstraction
 
Регистрация: 25.10.2011
Сообщений: 3,178
По умолчанию

Цитата:
Никто из уважаемых не покидает несколько простеньких задач, чтобы закрепить мой небольшой успех в работе с функциями?
Так в Кернигане-Ритчи должны быть?
Ну, положим:
1) Посчитать число гласных и число согласных в строке (строка задана в коде программы / строка читается со стандартного потока ввода);
2) Вывести десять случайных чисел с их суммами цифр (вариант: выводить сумму цифр для вводимых чисел);
3) Зашифровать вводимый пользователем текст шифром типа атбаш (первая буква алфавита кодируется последней, вторая - предпоследней и т.д.);
4) Зашифровать вводимый пользователем текст шифром Цезаря (первая буква алфавита кодируется четвёртой, вторая - пятой, ..., предпоследняя - второй, последняя - третьей);
Дополнительное условие: в заданиях 3) и 4) код main может отличаться только именем вызываемой функции.
Abstraction вне форума Ответить с цитированием
Старый 13.02.2013, 11:58   #4
Cynically
Пользователь
 
Регистрация: 05.01.2013
Сообщений: 60
По умолчанию

Цитата:
Сообщение от БалаШагаЛ Посмотреть сообщение
И, кстати, f = f + step лучше заменить на f+=step

А по поводу задачек, вот книжку держите.
Спасибо за рекомендацию, приму к сведению. А книжка, кстати, почему не открывается – пишет, что "переход на веб-страницу отменен" и ничего поделать с этим нельзя, увы.
Cynically вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Использование подпрограммы-функции: Вычислить значение функции (Турбо паскаль) RealUnited Паскаль, Turbo Pascal, PascalABC.NET 1 05.12.2012 20:34
Построение графика функции, мигание(затухание) шарика в минимумах функции kas1m_rus Паскаль, Turbo Pascal, PascalABC.NET 0 27.05.2012 20:28
Как подменить адрес возврата функции func на адрес функции f используя переполнение буфера buf и функции gets dmitrii6120 Помощь студентам 6 14.11.2011 20:10
Мини бэйсик:объявление функции, вызов функции , возврат. AL_LORD Помощь студентам 2 14.10.2010 17:48
Программа на СИ++, используя функции работы с файлами и функции <string.h> Аня Popova Фриланс 9 13.09.2010 15:52