Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву
Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Задача 28. Проверка наличия определенных элементов в массивеСодержание книги
Поиск на нашем сайте Условие задачи. Дан целочисленный массив из N элементов, N £ 20. Проверить, имеются ли в нём трёхзначные числа. Трехзначными числами являются положительные целые числа в диапазоне от 100 до 999 и отрицательные целые в диапазоне от -999 до -100. Можно проверять вхождение значения в один из двух диапазонов или взять значение по модулю и тогда проверять только принадлежность его диапазону [100; 999]. Исходными данными для этой задачи являются количество элементов массива N и их значения, результатом — сообщения «Да» или «Нет» в зависимости от выполнения условий задачи. Назовем массив А, а признак выполнения условия flag. Начальное состояние переменной flag устанавливается соответствующим значению «нет». В цикле осуществляется последовательная проверка элементов массива. Если очередной элемент является трехзначным числом, значение переменной flag должно измениться и стать соответствующим «да», в этом случае цикл можно прервать. Окончательный ответ можно дать только по завершении просмотра элементов в зависимости от значения переменной flag. Структурированная запись алгоритма 28 1 Ввести N. 2 Если N>20, то ограничим его максимально возможным N =20. 3 Повторять N раз в цикле i=1, N 3.1. Ввести значение элемента A[i] 4 Задать начальное значение flag = нет. 5 Повторять N раз в цикле i=1, N 5.1. Если 100≤ A[i] ≤999 или -999≤ A[i] ≤-100, то flag = да и цикл можно прервать. 6 Если flag = да, то вывести сообщение «В массиве есть трехзначные числа», иначе вывести сообщение «Трехзначных чисел в массиве нет». Схема алгоритма
Текст программы на языке Си #include <stdio.h> int main (void) { int a[20], n, i; char flag=0; printf (″Введите число элементов массива\n″); scanf (″%d″, &n); if (n>20) n=20; printf (″Введите значения элементов:\n”); for (i=0; i<n; i++) { printf (″a[%d]=″, i); scanf (″%d″, &a[i]); } for (i=0; i<n; i++) if (100<=a[i] && a[i]<=999 || -999<=a[i] && a[i]<=-100) { flag=1; break; } if (flag) printf ("В массиве есть трехзначные числа"); else printf ("Трехзначных чисел в массиве нет"); return 0; } Текст программы на языке Паскаль Program Pr_28; var a: array [1..20] of integer; n, i: integer; flag: boolean; begin writeln (ʹВведите число элементов массива’); read (n); if n>20 then n:=20; writeln (ʹВведите значения элементов:’); for i:=1 to n do begin write (ʹa[’, i, ʹ]=’); read (a[i]) end; flag:=false; for i:=1 to n do if (100<=a[i]) and (a[i]<=999) or (-999<=a[i]) and (a[i]<=-100) then begin flag:=true; break end; if flag then write('В массиве есть трехзначные числа') else write('Трехзначных чисел в массиве нет') end. Текст программы на языке Фортран Program Pr_28 Implicit none integer a(20), n, i logical flag print *, ʹВведите число элементов массива’ read *, n if (n>20) n=20 print *, ʹВведите значения элементов:’ do i=1, n print *, ʹa[’, i, ʹ]=’ read *, a(i) enddo flag=.false. do i=1, n if (100<=a(i).and.a(i)<=999.or. & -999<=a[i].and.a[i]<=-100) then flag=.true. exit endif enddo if (flag) then print *, ' В массиве есть трехзначные числа ' else print *, ' Трехзначных чисел в массиве нет ' endif end Программа на языке Python print("Введите число элементов массива 1<=N<=20 ") N=int(input()) if N > 20: N = 20 A = [] # Создаем пустой список for i in range(N): # i = 0,..., N-1 -- всего N print("Введите {0}-й элемент: ".format(i+1)) A.append(float(input())) flag = False for i in range(N): # i = 0,..., N-1 -- всего N if -999 <=A[i] <= -100 or 100 <= A[i] <= 999: flag = True break if flag: print("В массиве есть трехзначные числа") else: print("Трехзначных чисел в массиве нет") Программа в системе Матлаб n=input('Введите число элементов массива'); if n>20 n=20; end for i=1:n A(i)=input(' A(i)='); end flag=false; for i=1:n if 100<=A(i) && A(i)<=999 || … -999<=A(i) && A(i)<=-100 flag=true; break; end end if flag disp(' В массиве есть трехзначные числа ') else disp(' Трехзначных чисел в массиве нет ') end С использованием векторных функций n=input('Введите число элементов массива'); if n>20 n=20; end for i=1:n A(i)=input(' A(i)='); end if length(A(100<=abs(A) & abs(A)<=999))~=0 disp(' В массиве есть трехзначные числа ') else disp(' Трехзначных чисел в массиве нет ') end
|
||
|
Последнее изменение этой страницы: 2021-04-12; просмотров: 150; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 216.73.216.11 (0.007 с.) |