Консультация № 129208
26.03.2008, 19:32
0.00 руб.
0 1 1
Уважаемые эксперты!Помогите решить задачу:
После поступления в ВУЗ о студентах собрана информация: фамилия, нуждается ли в общежитии, стаж, работал ли учителем, что окончил, какой язык изучал. Составить программу, определяющую сколько человек нужда-ются в общежитии.
Описать, используя структуру данных запись, почтовую сортировку (город, улица, дом, квартира, кому, ценность). Составить программу, опреде-ляющую сколько посылок отправлено в г.Самару.
Спасибо.

Обсуждение

давно
Профессор
401888
1232
26.03.2008, 22:52
общий
это ответ
Здравствуйте, Юлия правда!
Во первых задач оказалось две, но они однотипные. По сложности они очень простые, только писанины много. Я писал наспех, не особенно подбирая слова, английский вперемежку с рязанским. Поэтому вы прчешите текстовую нагрузку, а сам код нормальный, работает, я проверял при небольших размерах списков. Код в приложении.Еще тип записываемых данных должен соответствовать типу поля. Если тип String, то текст(в том числе и цифры), если тип byte или integer, то только числа.

Приложение:
Задача 1.uses crt;type student=record {тип запись с полями по условию} fam:string[20]; obsch:string[20]; stag:byte; rabuch:string[20]; uchzav:string[20]; lang:string[20]; end;var sp:array[1..50]of student;{массив записей, или список} n,i,kol:integer;beginclrscr;write(‘Razmer zapisi: ‘);readln(n);for i:=1 to n do begin write(‘zapis ‘,i,‘: ‘); write(‘familia: ‘);readln(sp[i].fam); write(‘Nuzdaetsa v obsch: ‘);readln(sp[i].obsch);{yes,no} write(‘ctag: ‘);readln(sp[i].stag); write(‘rabotal uchitelem: ‘);readln(sp[i].rabuch); write(‘uchebnoe zavedenie: ‘);readln(sp[i].uchzav); write(‘language: ‘);readln(sp[i].lang); end;kol:=0;for i:=1 to n doif sp[i].obsch=‘yes‘then begin kol:=kol+1; end;writeln;writeln(‘V obschegitii nuzdajutsa ‘,kol,‘ chelovek(a)‘);readlnend.Задача 2.//все такжеuses crt;type pochta=record gor:string[20]; ulica:string[20]; dom:byte; kvart:byte; fam:string[20]; cena:integer end;var sp:array[1..50]of pochta; n,i,kol:integer;beginclrscr;write(‘Razmer zapisi: ‘);readln(n);for i:=1 to n do begin write(‘zapis ‘,i,‘: ‘); write(‘gorod: ‘);readln(sp[i].gor); {Samara и другие} write(‘ulica: ‘);readln(sp[i].ulica); write(‘dom: ‘);readln(sp[i].dom); write(‘kvartira: ‘);readln(sp[i].kvart); write(‘familia: ‘);readln(sp[i].fam); write(‘cennost: ‘);readln(sp[i].cena); end;kol:=0;for i:=1 to n doif sp[i].gor=‘Samara‘then begin kol:=kol+1; end;writeln;writeln(‘V Samaru otpravleno ‘,kol,‘ posylok‘);readlnend.
Форма ответа