Есть массив, проверить, является ли он перестановкой - QBasic

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

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

Проблема! Есть массив, проверить, является ли он перестановкой.Не работае программа при вводе одинаковых чисел(((( Подскажите, как узнать, есть ли одинаковые элементы?

Решение задачи: «Есть массив, проверить, является ли он перестановкой»

textual
Листинг программы
  1. CLS
  2. RANDOMIZE TIMER
  3. n = 10
  4. DIM a(n)
  5.  
  6. FOR i = 1 TO n
  7.    a(i) = FIX(90 * RND)
  8.    PRINT a(i);
  9. NEXT
  10. PRINT : PRINT
  11.  
  12. FOR i = 1 TO n
  13.    k = 0
  14.    FOR j = 1 TO n
  15.    IF a(i) = a(j) THEN k = k + 1
  16.    IF k > 1 THEN PRINT "NO": END
  17. NEXT j, i
  18.  
  19. PRINT "YES"
  20. END

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

  1. CLS — очистка экрана
  2. RANDOMIZE TIMER — установка генератора случайных чисел
  3. n = 10 — размер массива
  4. DIM a(n) — создание массива a размером n
  5. FOR i = 1 TO n — цикл по индексам массива a
  6. a(i) = FIX(90 * RND) — заполнение массива a случайными числами от 0 до 90
  7. PRINT a(i); — печать значения элемента массива a
  8. NEXT — переход к следующему элементу массива
  9. PRINT : PRINT — печать двух знаков :, для разделения вывода
  10. FOR i = 1 TO n — цикл по индексам массива a
  11. k = 0 — инициализация переменной k для подсчета повторяющихся элементов
  12. FOR j = 1 TO n — цикл по индексам массива a
  13. IF a(i) = a(j) THEN k = k + 1 — увеличение переменной k, если текущий элемент массива a(i) равен любому другому элементу массива a(j)
  14. IF k > 1 THEN PRINTNO: END — печать NO, если количество повторяющихся элементов больше 1
  15. NEXT j, i — переход к следующим элементам массива a
  16. PRINTYES` — печатьYES`, если все элементы массива уникальны
  17. END — завершение программы

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


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

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

12   голосов , оценка 3.75 из 5

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

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

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