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

Строки, множества и записи

06.12.2015, 13:50. Показов 902. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Список группы бегунов на короткие дистанции: Ф.*И.*О., год рождения, пол, место жительства, вес, рост, результаты бега на 100 и 200 м. Вычислить средний результат по двум дистанциям, выборка из файла по среднему результату, или последним трем буквам фамилии, или полу.
Сделал немного, но дальше не знаю как.

Помогите пожалуйста.
Вот часть моего кода.
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
program one;
 
type spisok=record
  f: string[20]
  data_roj: string[8];
  pol: string[3];
  adres: string[50];
  ves: real;
  rost: real;
  rezyl1: real;
  rezyl2: real;
end;
var begyn: array [1..5] of spisok;
  key:string;
  s:real;
  i,k:byte;
  ff:string[2];
begin 
  i:=0; s:=0;
repeat 
  i:=i+1;
  writeln ('Введите сведения об участнике');
  writeln ('Введите Ф.И.О.');
  readln (begyn[i].f)
  with begyn[i] do begin 
  write ('Введите дату рождения');
  readln (data_roj);
  write ('Введите пол');
  readln (pol);
  write ('Введите адрес');
  readln (adres);
  write ('Введите вес')
  readln (ves);
  write ('Введите рост');
  readln (rost);
  write ('Введите результат 100 м.');
  readln (rezyl1);
  write ('Введите результат 200 м.');
  readln (rezyl2);
  s:=rezyl1+rezyl2;
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
06.12.2015, 13:50
Ответы с готовыми решениями:

Строки, множества и записи
Type student=Record Fio:string; god:string; mesto:string; exz:array of...

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

Строки, записи, множества
В городе N имеется 100 кондитерских магазинов. Известно, что в каждом из этих магазинов не более 20...

Строки, записи, множества
дан текст из слов, разделенных пробелами. получить новую строку, в которой каждое слово фразы...

1
0 / 0 / 1
Регистрация: 26.10.2015
Сообщений: 11
13.12.2015, 12:18  [ТС] 2
Народ помогите пожалуйста. Вот что я сделал. Нужно выборку по последним трём буквам фамилии.
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
121
122
123
124
125
126
127
128
129
130
131
program one;
 
type spisok=record
  f: string[20];
  data_roj: string[8];
  pol: real;
  adres: string[50];
  ves: real;
  rost: real;
  rezyl1: real;
  rezyl2: real;
  srd:real;
  
end;
var begyn: array [1..5] of spisok;
  key:string;
  key1,key2,key3:integer;
  m:byte;
  srd:real;
  i,k:byte;
  ff:string[3];
  re1,re2:real;
 
begin 
  i:=0; srd:=0;
repeat 
  i:=i+1;
  writeln ('Введите сведения об участнике');
  writeln ('Введите Ф.И.О. ');
  readln (begyn[i].f);
  with begyn[i] do begin 
  write ('Введите дату рождения ');
  readln (data_roj);
  write ('Введите пол (1- Мужской, 2- Женский) ');
  readln (pol);
  write ('Введите адрес ');
  readln (adres);
  write ('Введите вес ');
  readln (ves);
  write ('Введите рост ');
  readln (rost);
  write ('Введите результат 100 м. ');
  readln (rezyl1);
  write ('Введите результат 200 м. ');
  readln (rezyl2);
  srd:=(rezyl1+rezyl2)/2;
  writeln ('Средний результат: ',srd);
  end;
  writeln ('Закончить ввод данных - y'); 
  readln(key); 
  until key='y';
    writeln('______________________________________'); 
  write ('Выберите меню поиска: 1- По среднему результату, 2- По последним 3ём буквам фамилии, 3- По полу');
  writeln('______________________________________'); 
  readln (key2);
  if key1=1 then 
    writeln ('Выбор по среднему результату');
    writeln ('Введите диапазон результата');
    write ('Начало: ');
    read (re1);
    write ('  Конец: ');
    read (re2);
    for k:=1 to i do 
    if (begyn[k]. srd>=re1) and (begyn[k].srd<=re2) then 
    with begyn[k] do begin
    writeln(' № бегуна: ',k); 
    writeln(' ФИО бегуна: ',f);
    writeln(' Дата рождения: ',data_roj); 
    writeln(' Пол бегуна: ',pol);
    writeln(' Адрес: ',adres); 
    writeln(' Вес бегуна: ',ves);
    writeln(' Рост бегуна: ',rost);
    writeln(' Ср. езультат : ',srd); 
    writeln('______________________________________'); 
    end;
 //----------------------------------------------------------------------------- 
{Сделать выборку вот по этому
  readln (key2);
  if key2=2 then 
    writeln ('Выбор по фамилии');
    write ('Поиск студентов. Введите последние 3 буквы фамилии:');
    readln(ff);
    for k:=1 to i do 
    if ff=copy(begyn[k]. then 
    with begyn[k] do begin
    writeln(' № бегуна: ',k); 
    writeln(' ФИО бегуна: ',f);
    writeln(' Дата рождения: ',data_roj); 
    writeln(' Пол бегуна: ',pol);
    writeln(' Адрес: ',adres); 
    writeln(' Вес бегуна: ',ves);
    writeln(' Рост бегуна: ',rost);
    writeln(' Ср. езультат : ',srd); 
    writeln('______________________________________'); 
    end; }
//------------------------------------------------------------------------------
    readln (key3);
  if key3=3 then 
    writeln ('Выбор по полу (1- Мужской, 2- Женский)');
    readln (m);
    for k:=1 to i do 
    if begyn[k].pol=1 then
    with begyn[k] do begin
    writeln(' № бегуна: ',k); 
    writeln(' ФИО бегуна: ',f);
    writeln(' Дата рождения: ',data_roj); 
    writeln(' Пол бегуна: ',pol);
    writeln(' Адрес: ',adres); 
    writeln(' Вес бегуна: ',ves);
    writeln(' Рост бегуна: ',rost);
    writeln(' Ср. езультат : ',srd); 
    writeln('______________________________________'); 
    end;
    if begyn[k]. pol=2 then
    with begyn[k] do begin
    writeln(' № бегуна: ',k); 
    writeln(' ФИО бегуна: ',f);
    writeln(' Дата рождения: ',data_roj); 
    writeln(' Пол бегуна: ',pol);
    writeln(' Адрес: ',adres); 
    writeln(' Вес бегуна: ',ves);
    writeln(' Рост бегуна: ',rost);
    writeln(' Ср. езультат : ',srd); 
    writeln('______________________________________'); 
    end;
 //-----------------------------------------------------------------------------
 end.
    
    
    
    end.
0
13.12.2015, 12:18
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
13.12.2015, 12:18
Помогаю со студенческими работами здесь

Строки, записи, множества
Напечатайте все целые числа в диапазоне от 1 до 1600, которые представимы в виде x^2+y^2, но...

ЗАПИСИ, МНОЖЕСТВА, ПЕРЕЧИСЛИМЫЙ ТИП, СТРОКИ
Прошу помощи.. 1. Багаж пассажира характеризуется кол-вом вещей и общим весом вещей. Пусть дан...

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

Множества и записи на си
Нужно написать лекцию по програмированию, и один из пунктов &quot;множества и записи&quot;. Уже обыскался в...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru