Перевести код с Паскаля на Си - C (СИ) (150103)
Формулировка задачи:
Думаю Вам не составит труда ). А я запутался)
А это еще:
uses crt; var N,M:integer; function Fac(x:integer):longint; begin if x=1 then Fac:=1 else fac:=x*fac(x-1); end; begin clrscr; Write('N=');readln(N); Write('M<N=');readln(M); write('N!/(M!*(N-M)!)=',Fac(N)div(Fac(M)*Fac(N-M))); readln; end.
var a: array[0..9] of integer; i, n, l: integer; av: real; begin readln(n); for i := 0 to 9 do begin a[i] := random(25); if a[i] < n then av := av + a[i]; l := l + 1; end; av := av / l; writeln('Среднее арифметическое чисел <', n:3, ' =', av:4); end.
Решение задачи: «Перевести код с Паскаля на Си»
textual
Листинг программы
#include <stdio.h> #include <stdlib.h> int random (int N) { return rand() % N; } int main() { int a[10]; int i,n,l=0; float av=0; printf ("<<Вычисление среднее арифметическое чисел>>\n"); printf ("Введите число = "); scanf ("%d",&n); printf("%d\n",n) ; for(i=0;i<10;i++) { a[i] = random(25); printf("%d %d \n",i,a[i]); if (a[i]<n) { av=av+a[i]; l=l+1; } } printf("%d",l); printf("\nВычисление среднее арифметическое чисел < %d = %.3f\n", n, av/l); }
Объяснение кода листинга программы
- Объявлены функции main() и random(), а также переменные a[10], i, n, l=0; и av=0;
- Выводится сообщение
<<Вычисление среднее арифметическое чисел>>
- Пользователю предлагается ввести число =
- Число n считывается в переменную n с помощью scanf(
%d
,&n) - Выводится значение переменной n
- В цикле for(i=0;i<10;i++) перебираются элементы массива a от 0 до 9
- Каждый элемент a[i] инициализируется случайным числом от 0 до 24 с помощью функции random(25)
- Выводится значение i и значение a[i]
- Если a[i] меньше значения n, то к среднему арифметическому av добавляется a[i], а к счетчику l добавляется 1
- После завершения цикла выводится значение счетчика l
- Вычисляется среднее арифметическое чисел, значение которого выводится на экран.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д