|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
15.04.2009, 21:55 | #1 |
Новичок
Джуниор
Регистрация: 15.04.2009
Сообщений: 1
|
Тип запись
Помогите пожалуйста составить программу! задание такое:Описать переменную "студент" (см. Вариант 4). Создать список студентов (N>10). Определить названия учебных заведений в которых учатся однофамильцы и если у них одинаковые имена, то сообщить,что они тезки.
Я уже описал переменную студент в процедуре,подскажите как доделать программу с использованием процедур. program ya; const max=11; type Student = Record FirstName:String[32]; SecondName:String[32]; SurName:String[32]; Group:String[32]; Institution:String[32]; end; StudentList=record Student_Array:Array[1..max] of Student; n:integer; end; var Students:StudentList; procedure InputData(var TStudent:StudentList); var n,i:integer; begin repeat writeln('Enter number students: '); readln(n); if (n<=0) or (n>max) then writeln('Error,please try again '); until(n>0)and(n<=max); for i:=1 to n do begin writeln('Enter firstname',i,' '); readln(TStudent.Student_Array[i].FirstName); writeln('Enter secondname',i,' '); readln(TStudent.Student_Array[i].SecondName); writeln('Enter surname',i,' '); readln(TStudent.Student_Array[i].SurName); writeln('Enter group ',i,' '); readln(TStudent.Student_Array[i].Group); writeln('Enter institution',i,' '); readln(TStudent.Student_Array[i].Institution); end; end; |
16.05.2010, 19:06 | #2 |
Пользователь
Регистрация: 30.04.2010
Сообщений: 15
|
Program St;
uses crt; const m=10; type Stud=record f,i,vuz:string[30]; end; StudentsList=record a:array[1..100] of Stud; k:integer; end; Procedure InputStudent(var Student:Stud); begin Write('Фамилия студента : '); ReadLn(Student.f); write('Имя студента: '); ReadLn(Student.i); Write('Название института : '); ReadLn(Student.vuz); end; Procedure InputStudentsList(var Students:StudentsList); var i:integer; begin WriteLn('Введите информацию о студентах: '); repeat Write('Введите количество студентов не больше ',m,': '); ReadLn(Students.k); until (Students.k>=1) and (Students.k<=m); for i:=1 to Students.k do InputStudent(Students.a[i]); end; Procedure Poisk(Students:StudentsList; var s:array of integer); var i,j:integer; begin WriteLn; WriteLn('Фамилии студентов: '); s[0]:=0; for i:=1 to (Students.k-1) do for j:=(i+1) to Students.k do if (Students.a[i].f=Students.a[j].f) then begin s[2*s[0]+1]:=i; s[2*s[0]+2]:=j; s[0]:=s[0]+1; end; end; Procedure Print(Students:StudentsList; s:array of integer); var i:integer; var n:real; begin if s[0]=0 then writeln ('Таких студентов нет’) else for i:=0 to (s[0]-1) do begin writeln('Пара номер ',i+1); writeln('Название института первого студента: ',students.a[2*i+1].vuz); writeln('Название института второго студента :',students.a[2*i+2].vuz); if students.a[2*i+1].i=students.a[2*i+2].i then writeln('Они тёзки'); end; end; var Students:StudentsList; s:array [0..100] of integer; begin clrscr; InputStudentsList(Students); Poisk(Students,s); Print(Students,s); readln; end. |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Тип запись | tanek | Помощь студентам | 9 | 23.03.2009 19:56 |
Pascal. Тип запись | d_b | Помощь студентам | 9 | 02.03.2009 08:46 |
задача на тип-ЗАПИСЬ | Fornarina | Помощь студентам | 1 | 01.03.2009 11:00 |
тип запись | связист | Помощь студентам | 5 | 13.12.2006 08:59 |