Переписать программу из Паскаля в C - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Люди добрые, помогите. Нужна эта же программа, но в Си (C). Код Pascal
program pr1_9;
uses crt;
var
mas: array[1..100] of integer ;
n,i,j,k: integer;
begin
clrscr;
 
writeln('Bvedite kol elementov posled (ne bolshe 100); ');
read(n);
 
writeln('Bvedite posledov');
for i:=1 to n do
read(mas[i]);
 
k:=0;
for j:=1 to 20 do
for i:=1 to n do
if (mas[i]=(2*j*2*j) ) then k:=k+1;
 
writeln('Kol = ',k);
readln;
readln;
end.

Решение задачи: «Переписать программу из Паскаля в C»

textual
Листинг программы
#include <stdio.h>
 
int main( int argc, char *argv[] )
{
    printf( "Введите количество элементов последовательности, (не больше 100): " );
    int n;
    scanf( "%d", &n );
 
    printf( "Введите последовательность:\n" );
    int a[ n ];
    for ( int i = 0; i < n; i++ ) {
        scanf( "%d", &a[ i ] );
    }
 
    int answer = 0;
    int k;
    int factorial_k = 1;
    for ( int i = 0; i < n; i++ ) {
        k = i + 1;
        factorial_k *= k;
 
        if ( 2 * k < a[ i ] && a[ i ] < factorial_k ) {
            ++answer;
        }
    }
 
    printf( "Ответ: %d\n", answer );
 
    return 0;
}

Объяснение кода листинга программы

  1. Ввод количества элементов последовательности с помощью функции scanf.
  2. Ввод самой последовательности с помощью цикла for и функции scanf.
  3. Инициализация переменных answer, k и factorial_k.
  4. Цикл for для вычисления факториала k и проверки условия для каждого элемента последовательности.
  5. Увеличение значения переменной answer, если условие выполняется.
  6. Вывод результата с помощью функции printf.
  7. Возврат значения 0, означающего успешный конец работы программы.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

11   голосов , оценка 4.091 из 5
Похожие ответы