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

Сортировать студентов по возрасту (от младшего к старшему)

17.11.2019, 20:26. Показов 1074. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Вот код

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
const nmax=30; 
type studentinfo=record 
 fam:string[15]; 
 day,month,year:integer; 
 znak: string[10] 
 end; 
 massive=array [1..nmax] of studentinfo; 
var sortstudent,student: massive; 
 i,g,n:integer; 
begin 
 writeln('Введите количество студентов'); 
 readln(n); 
 writeln('Список состоит из ',n,' студентов.'); 
 writeln('Введите фамилию, дату рождения и знак Зодиака для каждого студента.'); 
 for i:=1 to n do 
 begin 
 writeln('Всего в списке ',n,' студентов'); 
 writeln('Вы вводите ',i,'-го студента в список.'); 
 writeln('Введите Фамилию студента'); 
 readln(student[i].fam); 
 writeln('Введите дату рождения студента [информация вводится числовым значением]:'); 
 writeln('Введите День рождения'); 
 readln(student[i].day); 
 writeln('Введите Месяц рождения'); 
 readln(student[i].month); 
 writeln('Введите Год рождения'); 
 readln(student[i].year); 
 writeln('Введите знак Зодиака'); 
 readln(student[i].znak); 
 end;
 writeln(' Фамилия: ',student[i].fam,'; Дата рождения: ',student[i].day,'.',student[i].month,'.',student[i].year,'; Знак Зодиака: ',student[i].znak,'.'); 
 end; 
end.
Вобщем нужно сортировать по возрасту вводимый с клавиатуры список студентов.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
17.11.2019, 20:26
Ответы с готовыми решениями:

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

По зарплате поразрядной сортировкой от младшего разряда к старшему
Сортировка не работает. Помогите найти ошибку. //3 #include <iostream> #include <fstream> #include <string> ...

Найти элементы массива, у которых последовательность цифр от младшего к старшему разряду является убывающей
В заданном одномерном массиве целого типа найти и напечатать те элементы, у которых последовательность цифр от младшего к старшему разряду...

1
2374 / 776 / 561
Регистрация: 15.01.2019
Сообщений: 2,394
18.11.2019, 09:44
Попробуйте такой код.
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
program Project1;
const
  nmax = 30;
type
   Tstudentinfo = record
            fam: string[15];
 day,month,year: integer;
           znak: string[10]
                    end;
 Tmassive = array [1..nmax] of Tstudentinfo;
var
 sortstudent, student: Tmassive;
 i,j,g,n,p1,p2:integer;
 tmp: Tstudentinfo;
begin
 write('Введите количество студентов: ');
 readln(n);
 writeln('Список состоит из ',n,' студентов.');
 writeln('Введите фамилию, дату рождения и знак Зодиака для каждого студента.');
 for i:= 1 to n do
   begin
     writeln('Вы вводите ',i,'-го студента в список.');
     write('Введите Фамилию студента: ');
     readln(student[i].fam);
     writeln('Введите дату рождения студента [информация вводится числовым значением]:');
     write('Введите День рождения: ');
     readln(student[i].day);
     write('Введите Месяц рождения: ');
     readln(student[i].month);
     write('Введите Год рождения: ');
     readln(student[i].year);
     write('Введите знак Зодиака: ');
     readln(student[i].znak);
   end;
 writeln('Исходный массив записей:');
 writeln(' Фамилия:':15, ' Дата рождения: ':15, 'Знак Зодиака:':15);
 for i:= 1 to n do
   writeln(student[i].fam:15,student[i].day:7,'.',student[i].month:2,'.',student[i].year:4,student[i].znak:16);
 sortstudent:= student;
 for i:= 1 to n-1 do      // Сортировка найденый записей по номеру дома.
    for j:= 1 to n-i do
      begin
      p1:= sortstudent[j].day + sortstudent[j].month*100 + sortstudent[j].year*10000;
      p2:= sortstudent[j+1].day + sortstudent[j+1].month*100 + sortstudent[j+1].year*10000;
      if p1 > p2 then
        begin
          tmp := sortstudent[j];
          sortstudent[j] := sortstudent[j+1];
          sortstudent[j+1] := tmp;
        end;
      end;
 writeln('Отсортированный массив записей:');
 writeln(' Фамилия:':15, ' Дата рождения: ':15, 'Знак Зодиака:':15);
 for i:= 1 to n do
   writeln(sortstudent[i].fam:15,sortstudent[i].day:7,'.',sortstudent[i].month:2,'.',sortstudent[i].year:4,sortstudent[i].znak:16);
 readln;
end.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
18.11.2019, 09:44
Помогаю со студенческими работами здесь

Найти элементы массива, у которых последовательность цифр от младшего к старшему разряду является возрастающей
10. В заданном одномерном массиве целого типа найти и напечатать те элементы, у которых последовательность цифр от младшего к старшему...

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

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

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

Определить: фамилию самого младшего по возрасту человека среди военнообязанных
База данных «Фирма» состоит из записей о сотрудниках фирмы (фамилия, имя, отчество, зарплата и пол). Задать: формирование базы, просмотр...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru