Написать 2 программы: 1. проверить, есть ли в массиве отрицательные элементы. если есть, вывести а-номер первого такого элемента, b-номер последнего. (использовать барьер) 2. проверить, является ли массив целых чисел симметричным
173
285
Ответы на вопрос:
Const n = 10; var a: array[1..n] of integer; i, p, q: integer; flag: boolean; begin {1. инициализируем массив} randomize; write('элементы массива: '); for i : = 1 to n do begin a[i] : = random(101) - 50; write(a[i]: 5) end; writeln; {2. проверяем элементы массива на наличие отрицательных значений} flag : = true; i : = 1; {2.1 ищем первое по порядку отрицательное } while flag and (i < = n) do begin flag : = (a[i] > = 0); i : = i + 1 end; if flag then writeln('в массиве нет отрицательных элементов') else begin p : = i - 1; {2.1 ищем последнее по порядку отрицательное } i : = n; flag : = true; while flag and (i > p) do begin flag : = (a[i] > = 0); i : = i - 1 end; if flag then writeln('в массиве один отрицательный элемент с номером ', p) else writeln('отрицательные элементы лежат в промежутко от ', p, ' до ', i + 1) end end. тестовое решение: элементы массива: 17 -45 -29 -30 32 -12 29 -39 20 6 отрицательные элементы лежат в промежутке от 2 до 8 const nm = 50; {максимальная длина массива} var i, n, n2: integer; a: array[1..nm] of integer; flag: boolean; begin { 1. инициализация массива } write('введите количество элементов в массиве: '); readln(n); write('введите элементы массива через пробел '); for i : = 1 to n do read(a[i]); { 2. проверка симметричности массива } flag : = true; i : = 1; n2 : = n div 2; while flag and (i < = n2) do begin flag : = (a[i] = a[n - i + 1]); i : = i + 1 end; if flag then writeln('массив является симметричным') else writeln('массив не является симметричным') end. тестовое решение: введите количество элементов в массиве: 8 введите элементы массива через пробел 1 7 3 4 4 2 7 1 массив не является симметричным введите количество элементов в массиве: 7 введите элементы массива через пробел 8 4 9 1 9 4 8 массив является симметричным
Program z1; var ar: array of integer; f, l, i, n: integer; begin readln(n); setlength(ar, n+1); for i: =1 to n do read(ar[i]); f: =-1; for i: =1 to n do begin if ar[i]< 0 then begin f: =i; break; end; end; if f> 0 then begin for i: =n downto 1 do begin if ar[i]< 0 then begin l: =i; break; end; end; write(f,' ', l); end else write('no'); end. program z2; var ar: array of integer; i, n: integer; otv: boolean; begin readln(n); setlength(ar, n+1); for i: =1 to n do read(ar[i]); for i: =1 to n div 2+1 do begin if ar[i]< > ar[n-i+1] then begin otv: =true; break; end; end; if otv=true then write('no') else write('yes'); end.
Program kvadrat; var i: integer; begin for i: =1 to 10 do writeln (i*i); end.
Популярно: Информатика
-
sedoidenis200006.12.2021 16:24
-
ИЩЕ604.04.2023 21:24
-
ALXEN0309.02.2021 12:16
-
берсик708.07.2022 03:30
-
natali030303nat25.01.2023 21:29
-
anashakirova0919.09.2021 05:43
-
вано13927.05.2023 08:40
-
arsenumerbekov26.10.2021 02:55
-
SofaCat123109.06.2021 03:56
-
Romabl402.05.2022 16:29