Помощь - Поиск - Пользователи - Календарь
Полная версия: Записи
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
Вася
Сведения об ученике состоят из его имени и фамилии, названия класса (года
обучения и буквы), в котором он учится, оценок, полученных учеником за пос-
леднюю четверть. Пусть дан массив, содержащий сведения об учениках школы:

d) выясните, в каких классах насчитывается более 15 учащихся;

program s129n24dxXx;
const n	= 100;  // кол-во учеников
	  MaxN = 100;  // макс кол-во оценок одного ученика
type
	Tocenka = array [1..maxn] of integer; // тип массив оценок одного ученика
	data = record						 // запись, данные ученика
			   fio: string;			   // фамилия и имя
			   klass1: integer;		   // класс (цифра)
			   klass2: char;			  // класс (литера)
			   chetvert: Tocenka;		 // оценки за последнюю четверть
			 end;
	Tmas = array [1..n] of data;		   // массив данных учеников
var
  ucheniki: Tmas;   //массив данных учеников
  i: integer;	   //счётчик
// процедура ввода данных об одном ученике
procedure read_data (var a: data);
var i: integer;
begin
	writeln ('Введите сведения об ученике: ');
	with a do
	  begin
		  write ('Фамилия и имя: ');
		  readln (fio);
		  write ('класс (цифру): ');
		  readln (klass1);
		  write ('класс (литеру): ');
		  readln (klass2);
		  write ('оценки за четверть: ');
		  readln (chetvert[i]);
	  end;
end;
// процедура поиска классов, в которых более 15 учеников
procedure poisk (var a: Tmas);
var i, j, k: integer;
begin
	i:=0;
	while i<=n do
	begin
		k:=1;
		i:=i+1;
		for j:=1 to n do
		begin
			if (a[i].klass1=a[j].klass1) and (a[i].klass2=a[j].klass2)
			and (i<>j)
			 then
			k:=k+1;
		end;
		if (k>=15) then
		begin
			writeln (a[i].klass1, ' ', a[i].klass2);
		end;
	end;
end;
begin{main}
	for i:=1 to n do			 // ввод данных всех учеников
	begin
		read_data (ucheniki[i]);
	end;
	poisk (ucheniki);
	readln;
end.


Lapp
Вася, в чем состоит твой вопрос? Если просто проверить твою работу - извини, не по адресу. Отдай преподавателю, он проверит.
А здесь задавай вопросы, если что-то непонятно.
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.