Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 02.12.2011, 20:15   #1
M_arisha
Пользователь
 
Регистрация: 02.12.2011
Сообщений: 24
Восклицание массив,множество

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

Разработать игровую программу для тренировки памяти. В ее основу положить следующее правило игры. Необходимо ввести как можно больше чисел при соблюдении следующих условий:
• числа должны быть из диапазона 0... 255;
• запрещается последовательно вводить два числа, абсолютная разность между которыми меньше 7 (например, 5 и 6, 7 и 11).
Программа должна заканчивать свою работу после обнаружения первой ошибки игрока. На печать выводить количество правильно введенных чисел.

Последний раз редактировалось M_arisha; 02.12.2011 в 20:27.
M_arisha вне форума Ответить с цитированием
Старый 02.12.2011, 20:44   #2
Hacker19_90
Delphi Warrior
Старожил
 
Аватар для Hacker19_90
 
Регистрация: 15.08.2008
Сообщений: 2,502
По умолчанию

Цитата:
оформить выход из программы после обнаружения первой ошибки игрока в следующем задании
хм..... а такой алгоритм не пробовали?
Код:
if некатит условие then exit;
Mess with the best, die like the rest. (с) Hackers
Лабораторные, курсовые на Delphi\Pascal\C++
ya.flex-freelance@yandex.ru Icq - 636-954-303
Hacker19_90 вне форума Ответить с цитированием
Старый 02.12.2011, 20:59   #3
M_arisha
Пользователь
 
Регистрация: 02.12.2011
Сообщений: 24
По умолчанию

Код:
program PR4;
Uses Crt;
type
mass=array[1..100] of byte;
var
a:mass;
n,i:byte;
begin
ClrScr;
writeln('Лабораторная работа №4');
writeln('Корзун,Тужиков,Шаблыко');
write('n= ');  readln(n); {ввод размерности массива}
writeln('Vvedite elementy massiva:');
for i:=1 to n do
begin
write('a[',i,']= ');readln(a[i]);
end;
if(a[i]<0)or(a[i]>255)then
exit;

end.
Так при вводе числа >255 выход не осуществляется..?a exit;подчеркивает..


________
Код нужно оформлять по правилам:
тегом [CODE]..[/СODE] (это кнопочка с решёточкой #)
Не забывайте об этом!
Модератор.

Последний раз редактировалось Serge_Bliznykov; 03.12.2011 в 13:55.
M_arisha вне форума Ответить с цитированием
Старый 02.12.2011, 21:09   #4
Hacker19_90
Delphi Warrior
Старожил
 
Аватар для Hacker19_90
 
Регистрация: 15.08.2008
Сообщений: 2,502
По умолчанию

нда?
А что пишет?
и как вы думаете почему?
даю подсказку подучите циклы, гляньте алгоритмы проверки
Mess with the best, die like the rest. (с) Hackers
Лабораторные, курсовые на Delphi\Pascal\C++
ya.flex-freelance@yandex.ru Icq - 636-954-303
Hacker19_90 вне форума Ответить с цитированием
Старый 02.12.2011, 21:19   #5
M_arisha
Пользователь
 
Регистрация: 02.12.2011
Сообщений: 24
По умолчанию

пишет (Warning:unreachable code)
M_arisha вне форума Ответить с цитированием
Старый 02.12.2011, 21:23   #6
Hacker19_90
Delphi Warrior
Старожил
 
Аватар для Hacker19_90
 
Регистрация: 15.08.2008
Сообщений: 2,502
По умолчанию

ну поправьте цикл! ну проверка не там у вас лежит!
Mess with the best, die like the rest. (с) Hackers
Лабораторные, курсовые на Delphi\Pascal\C++
ya.flex-freelance@yandex.ru Icq - 636-954-303
Hacker19_90 вне форума Ответить с цитированием
Старый 03.12.2011, 05:18   #7
TinMan
Форумчанин
 
Аватар для TinMan
 
Регистрация: 05.09.2011
Сообщений: 869
По умолчанию

Мариш, Хакер прав - у тебя условие выхода выпало из цикла.
Но дело в том, что в этой задаче тебе совершенно не нужен массив. Все, что тебе нужно помнить - это последнее введенное число. И, соответственно, вводить n не надо. Вот, глянь сюда:
Код:
const
  d= 7;
var
  n,m,k: integer;
begin
  m:= -d-1;
  k:= -1;
  repeat
    n:= m;
    readln(m);
    inc(k)
  until (m<0) or (m>255) or (Abs(m-n)<d);
  writeln('Game over.  Your score is: ',k)
end.
Успехов тебе. Спрашивай, что неясно.
Предпочитаю на "ты".
TinMan вне форума Ответить с цитированием
Старый 03.12.2011, 18:56   #8
M_arisha
Пользователь
 
Регистрация: 02.12.2011
Сообщений: 24
По умолчанию

я поняла в чём дело и с выходом разобралась,но программу нужно написать использую массив или множество(предпочтительнее множество),что у меня не получается((
M_arisha вне форума Ответить с цитированием
Старый 03.12.2011, 19:06   #9
M_arisha
Пользователь
 
Регистрация: 02.12.2011
Сообщений: 24
По умолчанию

я поняла в чём дело и с выходом разобралась,но программу нужно написать использую массив или множество(предпочтительнее множество),что у меня не получается((
M_arisha вне форума Ответить с цитированием
Старый 03.12.2011, 19:19   #10
Hacker19_90
Delphi Warrior
Старожил
 
Аватар для Hacker19_90
 
Регистрация: 15.08.2008
Сообщений: 2,502
По умолчанию

ну если вы всё поняли, так переправьте свою программу!
Mess with the best, die like the rest. (с) Hackers
Лабораторные, курсовые на Delphi\Pascal\C++
ya.flex-freelance@yandex.ru Icq - 636-954-303
Hacker19_90 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Множество, содержащее натуральные числа из первой сотни. Сформировать новое множество из простых чисел первого множества Aimet Паскаль, Turbo Pascal, PascalABC.NET 3 16.06.2011 20:50
Дано множество А, напечатать четные элементы, входящие в другое множество (Паскаль) Марийка92 Помощь студентам 4 03.04.2011 17:38
Задано некоторое множество М и множество Т того же типа dark999 Помощь студентам 5 01.04.2011 14:17
Сформировать и напечатать множество всех четных чисел , не входящих в массив. Makcumqa Помощь студентам 1 18.03.2010 05:59