Вопрос задан 20.02.2021 в 10:34. Предмет Информатика. Спрашивает Шикалова Анна.

Дан целочисленный массив размера n (вводится с клавиатуры), не содержащий одинаковых чисел.

Проверить, образуют ли его элементы арифметическую прогрессию. Если образуют, то вывести разность прогрессии, если нет вывести 0 На языке C#
0 0
Перейти к ответам

Ответы на вопрос

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Третьякович Ксюша.
Using System;
public class Test{
  public static void Main(){
    Console.Write("Количество элементов в массиве: ");
    int max = Convert.ToInt32(Console.ReadLine(), 10);
    int[] a = new int[max];
    int buff;
    for(int i = 0; i < max; ++i){
      bool flag = false;
      do{
        Console.Write("a[{0}] = ", i);
        buff = Convert.ToInt32(Console.ReadLine(), 10);
        for(int j = 0; j < i; ++j)
          if(a[j] == buff){
            flag = true;
            break;
          }
        if(flag)
          Console.WriteLine("Такой элемент уже встречался! Повторите ввод!");
        else
          a[i] = buff;
      } while(flag);
    }
    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]);
  }
}
0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Вот пример кода на языке C#, который решает данную задачу:

csharp
using System; class Program { static void Main() { Console.Write("Введите размер массива: "); int n = int.Parse(Console.ReadLine()); int[] arr = new int[n]; Console.WriteLine("Введите элементы массива:"); for (int i = 0; i < n; i++) { arr[i] = int.Parse(Console.ReadLine()); } int diff = arr[1] - arr[0]; bool isArithmeticProgression = true; for (int i = 2; i < n; i++) { if (arr[i] - arr[i - 1] != diff) { isArithmeticProgression = false; break; } } if (isArithmeticProgression) { Console.WriteLine("Разность прогрессии: " + diff); } else { Console.WriteLine("0"); } } }

Программа сначала запрашивает размер массива n с клавиатуры. Затем она запрашивает элементы массива, один за другим, также с клавиатуры. Затем программа проверяет, образуют ли элементы массива арифметическую прогрессию, путем вычисления разности между соседними элементами и сравнения ее со всеми остальными разностями в массиве. Если все разности равны, программа выводит разность прогрессии, иначе выводит 0.

0 0

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос