Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[18.223.134.29] |
|
Сообщ.
#1
,
|
|
|
Помогите, пожалуйста, доделать программу, вариантную часть (2 пункт).
1. Составить картотеку для 3 преступников, указав их фамилию, место рождения, год рождения, рост в см, цвет глаз, цвет волос, особые приметы (татуировка, родимое пятно, шестипалость, заикание и т. д.). Известны рост, возраст, цвет волос и особая примета человека, совершившего преступление. Определить, есть ли в картотеке преступники с подобными приметами и если - да, вывести на чистый экран их фамилию, место рождения, год рождения, если - нет, сообщить об этом. Ниже вывести всю картотеку. 2. Ввести два варианта в зависимости от национальности преступника. В «русском» варианте поля должны содержать информацию о числе судимостей и о номерах статей за эти судимости, в «нерусском» варианте поля должны содержать информацию о наличии родственников в России (да/нет), их числе в случае «да» и их адрес проживания. Добавить данные из этих полей в выводимую картотеку. вот, что смог написать... program lab; uses crt; const max = 3; type kartoteka=record surname: string; mestorogd: string; godrogd: string; rost: string; cvetglaz: string; cvetvolos: string; osobprim: string; nation: string; sudimosti: byte; nomerastat: string; rod: byte; end; var arhiv: array[1..max] of kartoteka; j,i,k: integer; ch: char; godrogdpoisk: string; cvetvolospoisk: string; osobprimpoisk: string; rostpoisk: string; nac: byte; surname: string; mestorogd: string; godrogd: string; rost: string; cvetglaz: string; cvetvolos: string; osobprim: string; nation: string; sudimosti: byte; nomerastat: string; Begin clrscr; begin for j:=1 to max do with arhiv[j] do begin writeln('введите фамилию'); readln(surname); writeln('место рождения'); readln(mestorogd); writeln('год рождения'); readln(godrogd); writeln('рост'); readln(rost); writeln('цвет волос'); readln(cvetvolos); writeln('особые приметы'); readln(osobprim); writeln ('цвет глаз'); readln(cvetglaz); writeln('если преступник русский введите - 1, если нет - 2'); readln(nac); if nac=1 then begin writeln('количество судимостей'); readln(sudimosti); writeln('статьи'); readln(nomerastat); end; if nac=2 then begin writeln('есть родственник в России? (да\нет)'); readln(ch); end; end; end; clrscr; writeln('Введите возраст, рост, цвет волос, особые приметы'); readln(godrogdpoisk, rostpoisk, cvetvolospoisk, osobprimpoisk); k:=0; for j:=1 to max do with arhiv[j] do begin if (godrogd=godrogdpoisk) and (rost=rostpoisk) and (cvetvolos=cvetvolospoisk) and (osobprim=osobprimpoisk) then begin k:=k+1; writeln(surname:25, mestorogd:20, godrogd:4); end; end; if k=0 then writeln ('такого преступника нет'); for j:=1 to max do with arhiv[j] do begin if nac=1 then writeln(surname:10, mestorogd:10, godrogd:4, rost:3, cvetglaz:8, osobprim:8, sudimosti:5, nomerastat:5); if nac=2 then writeln(surname:10, mestorogd:10, godrogd:4, rost:3, cvetglaz:8, osobprim:8, ch:3); end; End. |
Сообщ.
#2
,
|
|
|
Type Nation=(russian,nonrussian); ... // здесь вариантная часть Case gaster : nation of Russian : (данные); Nonrussian: (данные); End; Подправил |