nolx Posted May 26, 2010 Report Share Posted May 26, 2010 1. Описать структуру с именем NOTE, содержащую следующие поля: • NAME — фамилия, имя; • TELE — номер телефона; • BDAY — день рождения (массив из трех чисел). 2. Написать программу, выполняющую следующие действия: • ввод с клавиатуры данных в массив BLOCKNOTE, состоящий из восьми элементов типа NOTE; записи должны быть упорядочены по трем первым цифрам номера телефона; • вывод на экран информации о человеке, чья фамилия введена с клавиатуры; • если такого нет, выдать на дисплей соответствующее сообщение. Заранее благодарен! Link to comment Share on other sites More sharing options...
Тролль Posted May 26, 2010 Report Share Posted May 26, 2010 nolx: Для таких вопросов есть специальная тема - "Заказы "Сделайте все за меня"... type NOTE=record NAME:string[25]; TELE:string[15]; BDAY:array[1..3]of word; end;var BLOCKNOTE:array[1..8]of NOTE; T:NOTE; i,j,k:integer; Name:string[25];begin k:=0; for i:=1 to 8 do begin writeln; write('Name? '); readln(BLOCKNOTE[i].NAME); if length(BLOCKNOTE[i].NAME)=0 then break; write('Phone number? '); readln(BLOCKNOTE[i].TELE); write('Birthday (YYYY MM DD)? '); for j:=1 to 3 do read(BLOCKNOTE[i].BDAY[j]); readln(Name); inc(k)end;for i:=1 to k do for j:=1 to k-i doif copy(BLOCKNOTE[j].TELE,1,3)>copy(BLOCKNOTE[j+1].TELE,1,3) then begin T:=BLOCKNOTE[j]; BLOCKNOTE[j]:=BLOCKNOTE[j+1]; BLOCKNOTE[j+1]:=T end;writeln; write('Name for the seach? '); readln(Name); j:=0;for i:=1 to k do if Name=copy(BLOCKNOTE[i].NAME,1,length(Name)) thenwith BLOCKNOTE[i] dobegin writeln; writeln('Name: ',NAME); writeln('Phone number: ',TELE); writeln('Birthday: ',BDAY[1]:5,BDAY[2]:3,BDAY[3]:3); j:=1 end;if j=0 then writeln('No such person!');readlnend. Фамилия и имя вводятся в одной строке, разделяются пробелом (или как угодно). Ввод пустой фамилии человека (то есть нажатие сразу Enter) прекращает дальнейший запрос информации о людях и выводится запрос на фамилию людей, данные о которых нужно найти. Если есть несколько человек с такой фамилией, будут выведены данные обо всех в порядке сортировки по первым трем цифрам телефонного номера, как указано в задании. Если людей с заданной фамилией нет, будет выведено сообщение об этом. Link to comment Share on other sites More sharing options...
Recommended Posts