Опубликовано 26.01.2018 по предмету Информатика от Гость

Перевод кода из 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.

Ответ оставил Гость

Кодяра ниже
//////////////////////
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]);
    }
}
//////////////////////
Кодяра выше

Не нашел нужный ответ?

Если ответ по предмету Информатика отсутствует или он оказался неправильным, то попробуй воспользоваться поиском других ответов во всей базе сайта.


Найти другие ответы