в паскале abc помогите написать программу.
Дано натуральное число N. С клавиатуры вводятся N дат рождения в
формате DD.MM.YYYY (например, 17.04.2014). Напечатать название месяца, в
котором больше всего дней рождений. Если таких месяцев несколько, то
напечатать название самого позднего из них.
Ответы на вопрос
Ответил Аноним
0
var
i,n,k,max:integer;
s:string;
a:array[1..12]of integer;
naz:array[1..12]of string;
begin
naz[1]:=('январь');
naz[2]:=('февраль');
naz[3]:=('март');
naz[4]:=('апрель');
naz[5]:=('май');
naz[6]:=('июнь');
naz[7]:=('июль');
naz[8]:=('август');
naz[9]:=('сентябрь');
naz[10]:=('октябрь');
naz[11]:=('ноябрь');
naz[12]:=('декабрь');
write('Введите число N: ');
readln(n);
for i:=1 to n do
begin
write('Введите дату: ');
readln(s);
s:=copy(s,4,2);
k:=StrToInt(s);
a[k]:=a[k]+1;
end;
for i:=1 to 12 do
begin
if a[i]>=max then
begin
max:=a[i];
n:=i;
end;
end;
writeln('Месяц с наибольшим количеством: ',naz[n]);
end.
i,n,k,max:integer;
s:string;
a:array[1..12]of integer;
naz:array[1..12]of string;
begin
naz[1]:=('январь');
naz[2]:=('февраль');
naz[3]:=('март');
naz[4]:=('апрель');
naz[5]:=('май');
naz[6]:=('июнь');
naz[7]:=('июль');
naz[8]:=('август');
naz[9]:=('сентябрь');
naz[10]:=('октябрь');
naz[11]:=('ноябрь');
naz[12]:=('декабрь');
write('Введите число N: ');
readln(n);
for i:=1 to n do
begin
write('Введите дату: ');
readln(s);
s:=copy(s,4,2);
k:=StrToInt(s);
a[k]:=a[k]+1;
end;
for i:=1 to 12 do
begin
if a[i]>=max then
begin
max:=a[i];
n:=i;
end;
end;
writeln('Месяц с наибольшим количеством: ',naz[n]);
end.
Новые вопросы