Помогите с заданием по PASCAL, пожалуйста, срочно!!! Заранее спасибо!!
Ответы
Ответ:
#PascalABC.NET
begin
var counter := 0;
var Notebook := new List<array of string>;
var rec := Readstring('новая запись: ');
while rec <> 'end' do begin
Notebook.Add(rec.Split(' '));
rec := ReadString('новая запись: ');
end;
Notebook.ForEach(rec -> Println(rec));
foreach var recs in Notebook do begin
if (recs[2].ToLower = 'алексей') and (recs[3].ToLower = 'михайлович') and (recs[7].StartsWith('4')) then counter += 1;
end;
print(counter);
end.
Глупо конечно такие таблицы хранить просто массивами, но в принципе оно делает вид, что работает корректно. "защита от дурака" не предусмотрена, если ввести строку с меньшим кол-вом слов, то будет исключение индекса - т.к телефон храниться с ячейке массива под индексом 7, то при длине записи меньше 7 позиций он туда обратиться, очевидно, не сможет.