IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

> Записи, Проверьте задачу
Вася
сообщение 23.05.2007 19:21
Сообщение #1


Новичок
*

Группа: Пользователи
Сообщений: 27
Пол: Мужской

Репутация: -  0  +


Сведения об ученике состоят из его имени и фамилии, названия класса (года
обучения и буквы), в котором он учится, оценок, полученных учеником за пос-
леднюю четверть. Пусть дан массив, содержащий сведения об учениках школы:

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.


 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов(1 - 1)
Lapp
сообщение 24.05.2007 2:38
Сообщение #2


Уникум
*******

Группа: Модераторы
Сообщений: 6 823
Пол: Мужской
Реальное имя: Лопáрь (Андрей)

Репутация: -  159  +


Вася, в чем состоит твой вопрос? Если просто проверить твою работу - извини, не по адресу. Отдай преподавателю, он проверит.
А здесь задавай вопросы, если что-то непонятно.


--------------------
я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

- Текстовая версия 28.07.2025 5:35
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"