Большее из чисел возведите в квадрат, а из меньшего - извлечь квадратный корень. - C (СИ)
Формулировка задачи:
Даны пять чисел. Большее из них возведите в квадрат, а из меньшего необходимо извлечь квадратный корень.
Числа: 18 , 26 , 9 , 45 , 32
Результат: 2025 , 3
Решение задачи: «Большее из чисел возведите в квадрат, а из меньшего - извлечь квадратный корень.»
textual
Листинг программы
#define _CRT_SECURE_NO_WARNINGS #include<stdio.h> #include<stdlib.h> #include<math.h> #define n 5 int main() { unsigned i,max=0,min=65536,numb[n]; FILE *f_in,*f_out; if ((f_in = fopen("input.txt","w")) == NULL) exit(1); if ((f_out = fopen("output.txt","w")) == NULL) exit(1); system("chcp 1251 >> nul"); printf("Введите массив чисел: "); fprintf(f_in,"Массив чисел: "); for (i=0;i<n;i++) { scanf("%d",&numb[i]); fprintf(f_in,"%d ",numb[i]); } for (i=0;i<n;i++) { if (numb[i]>max) max=numb[i]; if (numb[i]<min) min=numb[i]; } max=(int)pow(max,2); min=(int)pow(min,0.5); fprintf(f_out,"Результат: %d и %d\n",min,max); system("pause"); fclose(f_in); fclose(f_out); return 0; }
Объяснение кода листинга программы
- #define _CRT_SECURE_NO_WARNINGS - используется для отключения определенных видов предупреждений при компиляции, которые могут быть полезны для отладки кода, но могут также вызывать нежелательные сообщения при выполнении программы.
- #include
- подключает библиотеку, необходимую для работы с функциями ввода-вывода в стандартном вводе и выводе. - #include
- подключает библиотеку, необходимую для работы с функциями, которые обеспечивают выполнение арифметических операций, сравнений и манипуляций со строками. - #include
- подключает библиотеку, необходимую для работы с математическими функциями, такими как квадратный корень, экспонента и т.д. - #define n 5 - определяет размер массива чисел, который будет использоваться в программе.
- int main() - функция main() является точкой входа в программу.
- unsigned i,max=0,min=65536,numb[n]; - объявляет переменные, которые будут использоваться в программе.
- FILE f_in,f_out; - объявляет указатели на файлы, которые будут использоваться для чтения и записи данных.
- if ((f_in = fopen(
input.txt
,w
)) == NULL) exit(1); - открывает файлinput.txt
для записи данных. - if ((f_out = fopen(
output.txt
,w
)) == NULL) exit(1); - открывает файлoutput.txt
для записи данных. - system(
chcp 1251 >> nul
); - переводит консоль в кодировку windows-1251. - printf(
Введите массив чисел:
); fprintf(f_in,Массив чисел:
); - запрашивает у пользователя ввод массива чисел и записывает его в файлinput.txt
. - for (i=0;i<n;i++) { - начинается цикл, который проходит по всем элементам массива чисел.
- scanf(
%d
,&numb[i]); - считывает число с консоли и сохраняет его в соответствующем элементе массива. - fprintf(f_in,
%d
,numb[i]); - записывает число и пробел в файлinput.txt
. - if (numb[i]>max) max=numb[i]; - находит максимальное число в массиве.
- if (numb[i]<min) min=numb[i]; - находит минимальное число в массиве.
- max=(int)pow(max,2); min=(int)pow(min,0.5); - возводит максимальное число в квадрат и извлекает квадратный корень из минимального числа.
- fprintf(f_out,
Результат: %d и %d\n
,min,max); - записывает результат в файлoutput.txt
. - system(
pause
); - приостанавливает выполнение программы до тех пор, пока пользователь не нажмет любую клавишу. - fclose(f_in); fclose(f_out); - закрывает файлы
input.txt
иoutput.txt
. - return 0; - завершает работу функции main().