Форум программистов, компьютерный форум, киберфорум
Наши страницы
Pascal (Паскаль)
Войти
Регистрация
Восстановить пароль
 
Рейтинг 5.00/5: Рейтинг темы: голосов - 5, средняя оценка - 5.00
Влад Власов
0 / 0 / 0
Регистрация: 23.03.2014
Сообщений: 7
1

Описать структуру с именем Group

19.05.2015, 20:00. Просмотров 928. Ответов 3
Метки нет (Все метки)

необходимо описать структуру и написать программу, выручите пожалуйста

Описать структуру с именем GROUP, содержащую поля: Name - фамилия и инициалы, DAT - дата рождения (год, месяц, число), SES - успеваемость (массив из трёх элементов).

Написать программу, выполняющую:

- ввод с клавиатуры данных в массив GR5, состоящий из 10 структур типа GROUP;
- вывод на экран записей, упорядоченных по возрастанию поля SES;
- вывод списка студентов, возраст которых на 01.12.2010 года не превышает 20 лет;
- если таких студентов нет - выдать сообщение.
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.05.2015, 20:00
Ответы с готовыми решениями:

Описать структуру с именем ZNAK
Привет) последняя лаба по Паскалю... please help: Описать структуру с именем ZNAK, содержащую...

Описать структуру с именем NOTE
uses crt; type ZNAK=record fam:string; nam:string; zod:string; ...

Описать структуру с именем STUDENT
описать структуру с именем STUDENT, содержащую следующие поля: -- NAME - фамилия и инициалы; ...

Описать структуру с именем STUDENT
Описать структуру с именем STUDENT, содержащую следующие поля: -номер; -фамилия и имя; -год...

Описать структуру с именем PRICE
а) описать структуру с именем PRICE,содержащую следующие поля: * Название товара; * Код товара;...

3
JokeR.BY
CAPITAL OF ROCK!
1278 / 705 / 982
Регистрация: 03.03.2010
Сообщений: 2,284
Завершенные тесты: 2
20.05.2015, 00:32 2
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

вывод на экран записей, упорядоченных по возрастанию поля SES
это как? я конечно понимаю, что по средней оценок в массиве, но составителям подобных заданий по рукам надо надавать.
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
type
    TCount = 0..9;
    TData = record
        dd: 1..31;
        mm: 1..12;
        yyyy: Word;
    end;
    TSes = Array[0..2] Of 0..10;
    TGroup = record
        Name: String[40];
        DAT: TData;
        SES: TSes;
    end;
    TGR5 = Array[TCount] Of TGroup;
procedure Swap(var x, y: TGroup);
var
    z: TGroup;
begin
    z := x;
    x := y;
    y := z;
end;
function GetAvrSES(const ar: TSes): Double;
var
    i: Byte;
    Result: Double;
begin
    Result := 0;
    for i := 0 to Length(ar) - 1 do
        Result := Result + ar[i];
    GetAvrSES := Result / Length(ar);
end;
procedure PrintSorted(gr5: TGR5);
var
    i, j: TCount;
begin
    WriteLn('--------------------------');
    WriteLn('Sorted list by SES.');
    for i := Low(TCount) to High(TCount) - 1 do
        for j := i downto Low(TCount) do
            if (GetAvrSES(gr5[j].SES) > GetAvrSES(gr5[j + 1].SES))
            then
                Swap(gr5[j], gr5[j + 1]);
    for i := Low(TCount) to High(TCount) do
        with gr5[i] do
        begin
            WriteLn(Name, ':');
            with DAT do
                WriteLn(#9, 'Birth date: ', dd, '.', mm, '.', yyyy);
            Write(#9, 'Rates:');
            for j := 0 to Length(SES) - 1 do
                Write(SES[j]:3);
            WriteLn;
        end;
end;
function GetFullAge(const data: TData): Word;
var
    Result: Word;
begin
    Result := 2010 - data.yyyy;
    if ((data.mm = 12) And (data.dd > 1))
    then
        Dec(Result);
    GetFullAge := Result;
end;
procedure Print20Ages(const gr5: TGR5);
var
    i, j: TCount;
    state: Boolean;
begin
    state := False;
    WriteLn('--------------------------');
    WriteLn('20 years old person.');
    for i := Low(TCount) to High(TCount) do
        with gr5[i] do
            if (GetFullAge(DAT) > 20)
            then
            begin
                if (Not state)
                then
                    state := True;
                WriteLn(Name, ':');
                with DAT do
                    WriteLn(#9, 'Birth date: ', dd, '.', mm, '.', yyyy);
                Write(#9, 'Rates:');
                for j := 0 to Length(SES) - 1 do
                    Write(SES[j]:3);
                WriteLn;
            end;
    if (Not state)
    then
        WriteLn('Not found!');
end;
var
    GR5: TGR5;
    i, j: TCount;
begin
    for i := Low(TCount) to High(TCount) do
    begin
        WriteLn(i + 1, ' person:');
        with GR5[i] do
        begin
            Write(#9, 'FIO: '); ReadLn(Name);
            {$R+}
            with DAT do
            begin
                Write(#9, 'Birth date (dd mm yyyy): '); ReadLn(dd, mm, yyyy);
            end;
            for j := 0 to Length(SES) - 1 do
            begin
                Write(#9, 'Rate[', j + 1, ']='); ReadLn(SES[j]);                
            end;
            {$R-}
        end;
    end;
    PrintSorted(GR5);
    Print20Ages(GR5);
end.

Не по теме:

это вам за задание в виде фотки.

1
Влад Власов
0 / 0 / 0
Регистрация: 23.03.2014
Сообщений: 7
20.05.2015, 07:30  [ТС] 3
Спасибо огромное, Вы очень выручили!
0
Cyborg Drone
20.05.2015, 23:26     Описать структуру с именем Group
  #4

Не по теме:

Влад Власов, рекомендую Вам ознакомиться с правилами форума. Фотографии текста запрещены. Темам следует давать осмысленные, отражающие суть вопроса, названия. "Кричащее" форматирование текста запрещено, в том числе написание сообщений заглвными буквами.

Фотограафия текста заменена текстом. CapsLock убран.

Если не будете оформлять Ваши сообщения согласно правил форума, я с Вами нехорошо поступлю.

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.05.2015, 23:26
Привет! Вот еще темы с ответами:

Описать структуру с именем ZNAK
Описать структуру с именем ZNAK, содержащую следующие поля: 1)Фамилия имя. 2)Знак зодиака. ...

Описать структуру с именем STUDENT
Описать структуру с именем student содержашие следушие поля 1.Фио 2.номер группы...

Описать структуру с именем MARSH (маршрут)
Толи я дурак, толи лыжи не едут, но помогите пожалуйста, что не так? Program lab10; Uses crt;...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru