Найти наибольше и наименьшие значения функции для целых аргументов от 1 до 50 - C (СИ) (72360)
Формулировка задачи:
Всем привет!Нужна помощь в выполнении задания!Где-то закралась ошибка!
Задание:
Найти наибольше и наименьшие значения функции для целых аргументов от 1 до 50. Для этого использовать конструкцию выбора внутри цикла :
cos(2*3.14*i/50+3.14/2)/sin(2*3.14*i/50+3.14/2)
Код моей программы:
Пожалуйста помогите!Заранее благодарен!
Пишу через eclipse-spp-luna-sr1
Коомпилятор MinGW
Листинг программы
- #include <stdio.h>
- #include <stdlib.h>
- #include <math.h>
- main()
- {
- int i=1;
- int y, max=-1000000000000 , min=1000000000000;
- while(i<50)
- {
- y= cos(2*3.14*i/50+3.14/2)/sin(2*3.14*i/50+3.14/2)
- if(y>max)
- max=y;
- if(a<min)
- min=y;
- i++
- // printf( " %i\n" , y);
- }
- printf("%i\n" , min);
- printf("%i" , max);
- return 0;
- }
Решение задачи: «Найти наибольше и наименьшие значения функции для целых аргументов от 1 до 50»
textual
Листинг программы
- int y, max, min; // Инициализация не нужна
- ...
- while (i<=50) {
- y= cos(2*3.14*i/50+3.14/2)/sin(2*3.14*i/50+3.14/2)
- if (i==1) max=min=y;
- else {
- if(y>max)
- max=y;
- if(y<min)
- min=y;
- }
- i++;
- }
Объяснение кода листинга программы
- Объявляются три переменные типа int: y, max, min. Значения переменных не инициализируются.
- В цикле while происходит вычисление значения переменной y по формуле: y = cos(23.14i/50+3.14/2)/sin(23.14i/50+3.14/2).
- Если i равно 1, то значения переменных max и min присваивается значение переменной y.
- В противном случае происходит проверка: а) Если значение переменной y больше значения переменной max, то значение переменной max присваивается значение переменной y. б) Если значение переменной y меньше значения переменной min, то значение переменной min присваивается значение переменной y.
- Значение переменной i увеличивается на единицу.
- Цикл while выполняется 50 раз.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д