Форум программистов, компьютерный форум, киберфорум
Free Pascal
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
0 / 0 / 0
Регистрация: 11.02.2016
Сообщений: 3

Определить количество школьников с именем Сергей

16.02.2016, 18:44. Показов 1025. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Задача: Добавить и вычислить в структуре поле «Возраст», вводя текущую дату с формы. Определить количество школьников с именем Сергей. Упорядочить записи по номеру школы.

Сведения о школьниках
Фамилия Имя Дата рождения Школа Класс
Сергеев Сергей 05.05.1994 112 9-А

Код:

Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
program projekt;
uses crt, fileutil;
const max=2;
type xxx=record
          fam:string[20];
          nam:string[20];
          dat:string[30];
          tex:integer;
          kla:integer;
          voz:byte;
          end;
var serg:array[1..max] of xxx;
    n,i,j,k,p:byte;
    sr:real;
    x:xxx;
begin
{ввод исходных данных}
repeat
write(utf8toconsole('Общее количество учеников '),max,('n= '));
readln(n);
until n in [1..max];
writeln(utf8toconsole('Введите данные об ученике: '));
 
for i:=1 to n do
 begin
  writeln(utf8toconsole('Сергей '),i);
  with serg[i] do
  begin
   write(utf8toconsole('Фамилия: '));readln(fam);
   write(utf8toconsole('Имя: '));readln(nam);
   write(utf8toconsole('Дата рождения в формате дд.мм.гггг: '));readln(dat);
   write(utf8toconsole('Школа: '));readln(tex);
   write(utf8toconsole('Класс: '));readln(kla);
  end;
end;
{выведем исходные данные и посчитаем кол. уч. с именем Сергей}
writeln(utf8toconsole('Исходные данные: '));
writeln;
writeln(utf8toconsole('------------------------------------------------------------'));
writeln(utf8toconsole('|              |             |     Дата   |        |       |'));
writeln(utf8toconsole('|   Фамилия    |   Имя       |   Рождения | Школа  | Класс |'));
writeln(utf8toconsole('------------------------------------------------------------'));
for i:=1 to n do
  begin
   with serg[i] do
     begin
      gotoXY(1,whereY);write(('| '),fam);
      gotoXY(16,whereY);write(('| '),nam);
      gotoXY(30,whereY);write(('| '),dat);
      gotoXY(39,whereY);write(('| '),tex);
      gotoXY(49,whereY);write(('|'),kla);
      gotoXY(58,whereY);writeln('|');
      if nam='Сергей' then k:=k+1;
     end;
  end;
writeln(utf8toconsole('----------------------------------------------------------'));
writeln(utf8toconsole('Общее кол-во уч. с именем Сергей= '),k);
write('Press Enter...');
readln;
{добавим поле возраст}
repeat
write(utf8toconsole('Введите возраст от 10 до 18: '));
readln(p);
until p in [10..18];
writeln(utf8toconsole('Добавление поля возраст:'));
writeln;
writeln(utf8toconsole('----------------------------------------------------------------------'));
writeln(utf8toconsole('|              |             |    Дата   |        |       |          |'));
writeln(utf8toconsole('|   Фамилия    |   Имя       |  Рождения | Школа  | Класс |  Возраст |'));
writeln(utf8toconsole('----------------------------------------------------------------------'));
for i:=1 to n do
  begin
   with serg[i] do
     begin
      gotoXY(1,whereY);write(('| '),fam);
      gotoXY(16,whereY);write(('| '),nam);
      gotoXY(30,whereY);write(('| '),dat);
      gotoXY(39,whereY);write(('| '),tex);
      gotoXY(49,whereY);write(('|'),kla);
      gotoXY(58,whereY);write(('|'),voz);
      gotoXY(69,whereY);writeln('|');
     end;
  end;
writeln(utf8toconsole('---------------------------------------------------------------------'));
write('Press Enter...');
readln;
{сортировка по номеру школы}
for i:=1 to n-1 do
for j:=i+1 to n do
if serg[i].tex<serg[j].tex then
 begin
  x:=serg[i];
  serg[i]:=serg[j];
  serg[j]:=x;
 end;
writeln(utf8toconsole('По убыванию номера школы:'));
writeln;
writeln(utf8toconsole('----------------------------------------------------------------------'));
writeln(utf8toconsole('|              |             |    Дата   |        |       |          |'));
writeln(utf8toconsole('|   Фамилия    |   Имя       |  Рождения | Школа  | Класс |  Возраст |'));
writeln(utf8toconsole('----------------------------------------------------------------------'));
sr:=0;
for i:=1 to n do
  begin
   with serg[i] do
     begin
      gotoXY(1,whereY);write(('| '),fam);
      gotoXY(16,whereY);write(('| '),nam);
      gotoXY(30,whereY);write(('| '),dat);
      gotoXY(39,whereY);write(('| '),tex);
      gotoXY(49,whereY);write(('|'),kla);
      gotoXY(58,whereY);write(('|'),voz);
      gotoXY(69,whereY);writeln('|');
     end;
  end;
writeln('---------------------------------------------------------------------');
sr:=sr/n;
write('Press Enter...');
readln;
end.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
16.02.2016, 18:44
Ответы с готовыми решениями:

Записи: определить количество школьников с именем Сергей. Упорядочить записи по номеру школы
Нужно создать консольное приложение без формы по данной таблице Таблица 8.3. Сведения о школьнике Фамилия Имя Дата рождения ...

Нужно узнать количество школьников с определенным именем
Суть такая, есть БД, точнее БД вводится пользователем все это записывается,нужно узнать сколько школьников с именем например Сергей и т.д. ...

Определить количество мальчиков и девочек среди школьников
Ввести информацию по 10 школьникам (ФИО, пол, год рождения). Определить количество мальчиков и девочек. Вывести список каждых. Помогите...

2
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
 Аватар для volvo
33402 / 21512 / 8236
Регистрация: 22.10.2011
Сообщений: 36,913
Записей в блоге: 12
16.02.2016, 20:27
Нет никаких синтаксических ошибок в коде, нечего исправлять. Нужно просто добавить зависимость (Проект - Инспектор проекта - Добавить - Новая зависимость - выбрать в списке LazUtils), чтобы проект собрался.
0
0 / 0 / 0
Регистрация: 11.02.2016
Сообщений: 3
17.02.2016, 15:07  [ТС]
В этом программном коде нет ошибок, но вычисления неправельные и поэтому я не знаю где ошибки. Не могу их исправить.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
17.02.2016, 15:07
Помогаю со студенческими работами здесь

Определить минимальное количество школьников для получения заданного распеределения оценок
Ученики десятых классов написали директорскую контрольную работу по математике. В результате ровно A% учащихся получили оценку высокого...

Определить минимальное количество школьников для получения указанных результатов контрольной работы
Параллель восьмых классов написала контрольную работу. В результате ровно A% учащихся получили 5, ровно B% - 4, ровно C% - 3, а остальные...

Определить количество школьников, которым достанется яблок меньше, чем некоторым из их товарищей
Пожалуйста, понимаю, что кому-то это легко, но уже запуталась.... �� школьников делят �� яблок “поровну”, то есть так,...

Сколько школьников списывали на экзамене, и выведите порядковые номера списывавших школьников
Здравствуйте, помогите пожалуйста. Группа из N школьников сдавала ЕГЭ по информатике. Каждый школьник получил некоторый результат от 0 до...

Определить количество появлений в строке с именем и отчеством последней буквы имени
Строка, состоящая из имени и отчества студента, заканчивается точкой. Определить количество появлений в ней последней буквы имени.


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
Перемещение выделенных строк ТЧ из одного документа в другой
Maks 30.03.2026
Реализация из решения ниже выполнена на примере нетипового документа "ВыдачаОборудованияНаСпецтехнику" с единственной табличной частью "ОборудованиеИКомплектующие" разработанного в конфигурации КА2. . . .
Functional First Web Framework Suave
DevAlt 30.03.2026
Sauve. IO Апнулись до NET10. Из зависимостей один пакет, работает одинаково хорошо как в режиме проекта так и в интерактивном режиме. из сложностей - чисто функциональный подход. Решил. . .
Автоматическое создание документа при проведении другого документа
Maks 29.03.2026
Реализация из решения ниже выполнена на нетиповых документах, разработанных в конфигурации КА2. Есть нетиповой документ "ЗаявкаНаРемонтСпецтехники" и нетиповой документ "ПланированиеСпецтехники". В. . .
Настройка движения справочника по регистру сведений
Maks 29.03.2026
Решение ниже реализовано на примере нетипового справочника "ТарифыМобильнойСвязи" разработанного в конфигурации КА2, с целью учета корпоративной мобильной связи в коммерческом предприятии. . . .
Автозаполнение реквизита при выборе элемента справочника
Maks 27.03.2026
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. При выборе "Спецтехники" (Тип Справочник. Спецтехника), заполняется. . .
Сумматор с применением элементов трёх состояний.
Hrethgir 26.03.2026
Тут. https:/ / fips. ru/ EGD/ ab3c85c8-836d-4866-871b-c2f0c5d77fbc Первый документ красиво выглядит, но без схемы. Это конечно не даёт никаких плюсов автору, но тем не менее. . . всё может быть. . .
Автозаполнение реквизитов при создании документа
Maks 26.03.2026
Программный код из решения ниже размещается в модуле объекта документа, в процедуре "ПриСозданииНаСервере". Алгоритм проверки заполнения реализован для исключения перезаписи значения реквизита,. . .
Команды формы и диалоговое окно
Maks 26.03.2026
1. Команда формы "ЗаполнитьЗапчасти". Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. В качестве источника данных. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru