1. напишите программу, которая выводит значение порядкового номера этого значения. 2. напишите программу, которая подсчитывает количество элементов в массиве,равных 5. ,
1) var a:array [1..100] of integer; i,n,k:integer; begin readln(n); //количество элементов массива for i:=1 to n do read(a[i]); //ввод массива через пробел с клавиатуры writeln; readln(k); //ввод значения, номер которого будем искать for i:=1 to n do if a[i]=k then writeln(i) //поиск номера введенного элемента end. 2) var a:array [1..100] of integer; i,n,s:integer; begin s:=0; readln(n); //количество элементов массива for i:=1 to n do read(a[i]); //ввод массива через пробел с клавиатуры writeln; for i:=1 to n do if a[i]=5 then s:=s+1; //подсчёт кол-ва элементов равнх 5 writeln(s) end.
Предположим, что первый свидетель соврал, что автобус - первый, и сказал правду, что маршрутка - вторая. Тогда для третьего свидетеля - утверждение про автобус - ложь (так как вторым выехала маршрутка), значит третьим выехал легковой автомобиль. Тогда оба утверждения второго свидетеля являются ложью (у него легковой автомобиль - четвёртый на перекрестке, грузовик - второй, в у нас получилось легковой автомобиль - третий, в маршрутка - вторая). Получили противоречие. Значит, первый свидетель сказал правду, что автобус первый и соврал про маршрутку. Тогда из утверждений третьего свидетеля следует, что легковой автомобиль - третий. Из второго свидетеля следует, что грузовик - второй. Тогда маршрутке остаётся четвёртое место. ответ: АГЛМ
// PascalABC.NET 3.1, сборка 1219 от 16.04.2016 begin var a:=ReadLines('m17.txt').JoinIntoString.ToIntegers; a.Println; var b:=a.Select((x,i)->Rec(x,i)).Where(x->x.Item1<0) .Select(x->x.Item2).ToArray; if b.Count<>2 then Writeln('Количество отрицательных элементов не равно двум') else begin a:=SeqFill(b[0],0).Concat(a.Skip(b[0]).Take(b[1]-b[0]+1)) .Concat(SeqFill(a.Length-b[1]-1,0)).ToArray; a.Println end end.
Файл с исходными данными имеет имя m17.txt. Тестовый файл находится во вложении. Разбивка на строки сделана по 5 значений, но может быть совершенно произвольной. Также нет привязки именно к 17 числам, главное - чтобы отрицательных чисел было ровно два, иначе будет выдано сообщение о их неверном количестве.
var a:array [1..100] of integer;
i,n,k:integer;
begin
readln(n); //количество элементов массива
for i:=1 to n do
read(a[i]); //ввод массива через пробел с клавиатуры
writeln;
readln(k); //ввод значения, номер которого будем искать
for i:=1 to n do
if a[i]=k then writeln(i) //поиск номера введенного элемента
end.
2)
var a:array [1..100] of integer;
i,n,s:integer;
begin
s:=0;
readln(n); //количество элементов массива
for i:=1 to n do
read(a[i]); //ввод массива через пробел с клавиатуры
writeln;
for i:=1 to n do
if a[i]=5 then s:=s+1; //подсчёт кол-ва элементов равнх 5
writeln(s)
end.