Форум программистов  
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

Вернуться   Форум программистов > Новички в программировании > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Ответ
 
Опции темы
Старый 20.11.2010, 13:54   #1
_fynjy_
Форумчанин
 
Регистрация: 20.11.2010
Адрес: Москва
Сообщений: 50
Репутация: 10
Вопрос Random ограничения (pascal)

Как сделать так чтобы pascal рандомом выбирал 2 числа от одного до ста но a>b было?

Пример:
Код:

program rand;
uses crt;
var a,b,c,c1:integer;
begin
randomize;
a := random(100)+1;
b := random(100)+1;
clrscr;
writeln('Дано выражение');
write(a,'-',b,'='); readln(c);
c1:=a-b;
if  c=c1 then begin
textcolor (green);
write('Правильно!');
end
else begin
textcolor (red);
write('Попробуйте ещё раз');
end;
readln;
end.


Последний раз редактировалось _fynjy_; 20.11.2010 в 13:59.
_fynjy_ вне форума   Ответить с цитированием
Старый 20.11.2010, 16:08   #2
Naive
Раздолбайских Дел
Профессионал
 
Аватар для Naive
 
Регистрация: 22.05.2009
Адрес: Екатеринбург
Сообщений: 3,563
Репутация: 1785
По умолчанию

Код:

a := random(100)+1;
b := random(a)+1;

__________________
ridero.ru — создайте настоящую книгу
Жду ваши искренние спасибы на яндекс-кошелек: 410011068154587
Naive вне форума   Ответить с цитированием
Старый 20.11.2010, 16:58   #3
_fynjy_
Форумчанин
 
Регистрация: 20.11.2010
Адрес: Москва
Сообщений: 50
Репутация: 10
По умолчанию

Спасибо, помогло
_fynjy_ вне форума   Ответить с цитированием
Старый 20.11.2010, 17:07   #4
Grag
А может и не...
Профессионал
 
Аватар для Grag
 
Регистрация: 27.03.2010
Адрес: Красноярск
Сообщений: 1,269
Репутация: 151

icq: 585281783
skype: delmas61
По умолчанию

Цитата:
Сообщение от Naive Посмотреть сообщение
Код:

a := random(100)+1;
b := random(a)+1;

random(100) генерирует число в диапазоне 0..99, допустим, что А получилось равным 99+1=100. Тогда для В может быть получено число из диапазона 0..А-1+1. Допустим, что для В генерируется число 100-1+1, т.е. В=100. Имеем А=100 и В=100. Ну и чем тебе это помогло???
__________________
Перемешивай дело с бездельем и не сойдешь с ума...
Grag вне форума   Ответить с цитированием
Старый 20.11.2010, 17:11   #5
_fynjy_
Форумчанин
 
Регистрация: 20.11.2010
Адрес: Москва
Сообщений: 50
Репутация: 10
По умолчанию

Логично, но при проверки ооочень много раз у меня b было меньше чем a, тем более b генерируется что a будет больше него или равно ему.
_fynjy_ вне форума   Ответить с цитированием
Старый 20.11.2010, 17:14   #6
Grag
А может и не...
Профессионал
 
Аватар для Grag
 
Регистрация: 27.03.2010
Адрес: Красноярск
Сообщений: 1,269
Репутация: 151

icq: 585281783
skype: delmas61
По умолчанию

Вот придешь к преподу, а оно тебе сгенерирует А=100 и В=100 он тебе двояк и влепит... Заслуженно!!!
__________________
Перемешивай дело с бездельем и не сойдешь с ума...
Grag вне форума   Ответить с цитированием
Старый 20.11.2010, 17:21   #7
_fynjy_
Форумчанин
 
Регистрация: 20.11.2010
Адрес: Москва
Сообщений: 50
Репутация: 10
По умолчанию

А как тогда так сделать?
Можно только надеяться на вероятность что a>b
_fynjy_ вне форума   Ответить с цитированием
Старый 20.11.2010, 17:24   #8
Grag
А может и не...
Профессионал
 
Аватар для Grag
 
Регистрация: 27.03.2010
Адрес: Красноярск
Сообщений: 1,269
Репутация: 151

icq: 585281783
skype: delmas61
По умолчанию

Да самое примитивно-простое - это b:=random(a)...
__________________
Перемешивай дело с бездельем и не сойдешь с ума...
Grag вне форума   Ответить с цитированием
Старый 20.11.2010, 17:25   #9
maxionans
Форумчанин
 
Аватар для maxionans
 
Регистрация: 02.01.2010
Сообщений: 254
Репутация: 125

skype: maxionans
По умолчанию

Код:

А как тогда так сделать?

Подумать, потом ещё раз подумать и написать b := random(a);

UPD: меня опередили
maxionans вне форума   Ответить с цитированием
Старый 20.11.2010, 17:29   #10
Grag
А может и не...
Профессионал
 
Аватар для Grag
 
Регистрация: 27.03.2010
Адрес: Красноярск
Сообщений: 1,269
Репутация: 151

icq: 585281783
skype: delmas61
По умолчанию

Цитата:
Сообщение от maxionans Посмотреть сообщение

Подумать, потом ещё раз подумать и написать ....
Вот поэтому и опередили... Фигли тут думать, тут писать надо! Как многие и делают... Шутка...
__________________
Перемешивай дело с бездельем и не сойдешь с ума...
Grag вне форума   Ответить с цитированием
Ответ



Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
ограничения доступа к сайтам S_Yevgeniy Свободное общение 29 23.07.2010 12:59
ограничения на размер массива? LOST94 Общие вопросы C/C++ 4 29.03.2010 09:50
Ограничения Flatterer Фриланс 1 08.03.2010 21:16
Как обойти ограничения? HAMMAN Свободное общение 3 19.12.2009 15:57
Ограничения панели инструментов wnuks Microsoft Office Excel 5 01.07.2008 22:39




13:18.


Powered by vBulletin® Version 3.8.8 Beta 2
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.

купить трафик


как улучшить посещаемость, а также решения по монетизации сайтов, видео и приложений

RusProfile.ru


Справочник российских юридических лиц и организаций.
Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru