Форум программистов, компьютерный форум, киберфорум
Pascal (Паскаль)
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.67/6: Рейтинг темы: голосов - 6, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 07.06.2010
Сообщений: 10
1

Не могу найти ошибку!! не могу не как разобраться! надо до завтра.

07.06.2010, 21:40. Просмотров 1108. Ответов 1
Метки нет (Все метки)

условие:
Для 7 человек, среди которых есть мужчины и женщины, хранятся следующие данные: имя, пол (true - мужской, false - женский), рост.Опишите логическую функцию Test(G), проверяющую, что в группе самая высокая из женщин ниже самого высокого из мужчин.

Мое решение:

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
uses crt;
type
name = (Mary, Jane, Kim, Bob, Jan, Pit, Tom);
data = record
male : boolean;
height:140..200;
end;
group = array[name] of data;
function Test(g:group):boolean;
var i,j:name;
mn:140..200;
iv:140..200;
begin
Test:=false;
mn:=140;
iv:=140;
for i:=Mary to Tom do
if (g[i].male=false)and(g[i].height>mn)then mn:=g[i].height;
writeln ('Максимальный рост из женщин = ',mn);
for i:=Mary to Tom do
if (g[i].male=true)and(g[i].height>iv) then iv:=g[i].height;
writeln ('Максимальный рост из мужчин = ',iv);
for i:=Mary to Tom do
if (g[i].male=true)and(mn<iv) then
begin
Test:=true;
break;
end;
end;
var a:group;
i:name;
s:string;
begin
clrscr;
writeln('Введите ',ord(Tom)+1,' записей:');
for i:=Mary to Tom do
begin
writeln('Запись ',ord(i)+1);
repeat
write(' Пол (муж или жен): ');readln(s);
if s='муж' then a[i].male:=true
else a[i].male:=false;
until(s='муж')or(s='жен');
repeat
write(' Рост [140..200]: ');readln(a[i].height);
until a[i].height in [140..200];
end;
if Test(a) then write('В группе есть женщина с высоким ростом ,которая ниже мужчины с самым высоким ростом')
else write('В группе нету женщин, либо в группе нету женщины с самым высоким ростом ,которая ниже самого выского мужчины');
readln;
end.

Вроде все нормально! Но ошиибка в том, что когда во все 7 записей я ввожу "муж" или "жен" он выводит недостоющие записи,как сделать так, чтоб без женщин или без мужчин сортировка не работала.
я делал,так давал условие, что если >= 140, то выполняется, если нет то нет.. ну это не красиво и не правильно.

помогите пожалуйста!!

Добавлено через 22 минуты
ну что не кто не поможет?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
07.06.2010, 21:40
Ответы с готовыми решениями:

Завтра надо сдавать, а я разобраться не могу
Дана последовательность n действительных чисел. Найти: 1)Кол-во элементов &gt;R 2)Найти насколько...

Не могу разобраться с If-ами. Не могу найти ошибку
Только начал знакомство с программированием. Преподаватель задал задание, написать программу в VLC...

Выдает ошибку в массиве,не могу разобраться,а надо бы по быстрее. Пожалуйста
хотела научиться сделать вывод/ввод значении с БД пока что есть два файла index.php and db.php...

Задали работу, не могу разобраться. Используется делфи 10, не могу разобраться, как это сделать
В одномерном массиве, состоящем из n вещественных элементов, вычислить: минимальный элемент массива...

1
167 / 94 / 11
Регистрация: 16.04.2010
Сообщений: 464
07.06.2010, 21:42 2
Как запостить тему, чтобы не получить ответ
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
07.06.2010, 21:42

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Дорогие форумчане,завтра надо сдать программу,а я не могу ее написать
Вводится последовательность целых чисел, 0 – конец последовательности. Определить, сколько в ней...

Найти ошибку в функции fprintf. не могу разобраться с форматом double
есть структура: struct Abonent { char nomer; double ostatok; char tarif; }arr ; есть...

Не могу разобраться с программой, выдает ошибку C2371, как и что исправить, не знаю, строка 20
#define _CRT_SECURE_NO_WARNINGS #include &lt;stdio.h&gt; #include &lt;locale.h&gt; #include &lt;math.h&gt; char...

Не могу разобраться с ценами мфу , надо продать бу
Ребята очень прошу помощи срочно нужны деньги семье а продать могу только просто лежащие мфу но не...

Не могу разобраться с циклами (не могу понять как сделать так чтоб цикл считывал каждый элемент, без массива!)
Натурально число а вводится пользователем.Определить количество не нудевых цифр этого числа . Не...

Выдает ошибку, не могу разобраться
Ошибка Unit1.pas(35): Illegal character in input file: '*' ($A0) Код программы:...


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

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

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