Определить первое и последнее пропущенные числа и их позиции в ряду - C (СИ)

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

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

Здравствуйте! Дан фрагмент натурального ряда чисел, в котором некоторые числа отсутствуют. Определить: 1) Первое и последнее пропущенные числа и их позиции в ряду; 2) Все пропущенные числа и их позиции {0, 11, 5, 8, 12, 6, 7, 14, 9, 1, 4, 5, 3, 2} - фрагмент натурального ряда в произвольном порядке

Решение задачи: «Определить первое и последнее пропущенные числа и их позиции в ряду»

textual
Листинг программы
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #define SIZE 13
  4.  
  5. int main()
  6. {
  7.     int a [SIZE] = {0, 11, 5, 8, 12, 6, 7, 14, 9, 1, 4, 3, 2};
  8.     int i,j, pass, hold;
  9.     printf("Dannye v nachalnom poryadke\n");
  10.  
  11.     for (i = 0; i <= SIZE - 1; i++)
  12.         printf("%4d", a[i]);
  13.  
  14.     for (i = 0; i <SIZE; i++)
  15.     {
  16.         for(j=i; j<SIZE; j++)
  17.         {
  18.             if (a[i] > a[j])
  19.             {
  20.                 hold = a[i];
  21.                 a[i] = a[j];
  22.                 a[j] = hold;
  23.             }
  24.         }
  25.     }
  26.  
  27.     printf(" \nDannye v novom poryadke\n");
  28.  
  29.     for (i = 0; i <= SIZE - 1; i++)
  30.         printf("%4d", a[i]);
  31.     printf("\n");
  32.  
  33.     pass=0;
  34.     for(i=0; i<SIZE-1; i++)
  35.     {
  36.         while(a[i]==pass)
  37.         {
  38.             i++;
  39.             pass++;
  40.         }
  41.  
  42.         printf("Lost = %d, index = %d\n",pass,i);
  43.         pass++;
  44.         i--;
  45.  
  46.     }
  47.  
  48.     return 0;
  49. }

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

В данном коде реализована сортировка массива методом пузырька. Также, после сортировки, ищется первое и последнее повторяющееся число и выводится на экран его значение и индекс.

  1. Объявлены переменные: — a - массив, содержащий 13 чисел, инициализированный значениями {0, 11, 5, 8, 12, 6, 7, 14, 9, 1, 4, 3, 2} — i, j - индексы для обхода массива — pass - счётчик для поиска повторяющихся чисел — hold - временная переменная для обмена значениями
  2. В цикле выводятся на экран значения массива в исходном порядке.
  3. В цикле с помощью метода пузырька происходит сортировка массива по возрастанию.
  4. Выводится на экран отсортированный массив.
  5. В цикле ищется первое и последнее повторяющееся число и выводится на экран его значение и индекс.

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


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

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

13   голосов , оценка 4.308 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы