Перевод кода из pascal в c# (консольное приложение) : проверить, образуют ли элементы целочисленного массива размера n арифметическую прогрессию. если да, то вывести разность прогрессии, если нет - вывести 0. код: const max=100; var a: array[1..max] of integer; n,i,k: byte; begin clrscr; repeat write('размер массива n='); readln(n); until n in [1..max]; writeln('введите ',n,' целых чисел: '); for i: =1 to n do begin write('a[',i,']='); readln(a[i]); end; clrscr; writeln('исходный массив: '); for i: =1 to n do write(a[i],' '); writeln; writeln; k: =0; for i: =2 to n-1 do if (a[i]-a[i-1])< > (a[i+1]-a[i])then begin k: =1; break; end; if k=1 then write('это не арифметическая прогрессия! ') else write('это арифметичевкая прогрессия, ее разность=',a[2]-a[1]); readln end.

romsik1999 romsik1999    3   09.09.2019 20:30    1

Ответы
lubenkovalilia2 lubenkovalilia2  16.08.2020 12:53
Кодяра ниже

using System;
public class Test{
    public static void Main(){
        const int max = 100;
        int[] a = new int[max];
        for(int i = 0; i < max; ++i){
            Console.Write("a[{0}] = ", i);
            a[i] = Convert.ToInt32(Console.ReadLine(), 10);
        }
        Console.Clear();
        Console.WriteLine("Исходный массив:");
        for(int i = 0; i < max; ++i)
            Console.Write("{0} ", a[i]);
        Console.WriteLine();Console.WriteLine();
        bool k = false;
        for(int i = 2; i < max; ++i)
        if((a[i] - a[i-1]) != (a[i-1] - a[i-2])){
            k = true;
            break;
        }
        if(k) Console.WriteLine("Это НЕ арифметическая прогрессия");
        else Console.WriteLine("Это арифметическая прогрессия c разностью {0}", a[1]-a[0]);
    }
}

Кодяра выше
ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика