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

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

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

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

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

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 01.04.2008, 09:24   #11
Небесный
Зелень
Форумчанин
 
Аватар для Небесный
 
Регистрация: 03.02.2007
Сообщений: 302
По умолчанию

Цитата:
Сообщение от Xardas Посмотреть сообщение
Честно говоря, мне б было стыдно обращаться с такой задачей...
А, мне бы не было стыдно. Ты обращаешься на форум с некотороми непосильными для тебя задачами? Ясно, что к своему уже опыту, ты сначала прошвирнешься по поиску, там есть много чего, но если вдруг нету, ты создаешь тоже тему. Если для этого парня задача с рандом, такая же тяжелая, как для тебя написать ОС на паскале, зачем тогда писать такое?
Форум создан для общения и помощи. Мы так и будем сидеть в яме, пока не научимся уважать учащегося!

ЗЫ: Xardas, конечно нужно учиться пользоваться поиском хотябы, не только на форуме, но и в гугле.
Небесный вне форума
Старый 01.04.2008, 10:11   #12
puporev
Старожил
 
Регистрация: 13.10.2007
Сообщений: 2,740
По умолчанию

Вот написал я в посте №6.
Цитата:
А если 12 раз выпадет число скажем 5?
Никто даже внимания не обратил, а ведь задача не просто на рандом, в ней не говорится о получении 12 случайных чисел из диапазона [1,90], а имеется 90 чисел и из них нужно случайным образом выбрать 12. А это не просто рандом, а рандом без повторений, и делается это так (алгоритм позаимвствовал у Карась):
Код:
uses crt;
var  m,i,j,x:byte;
     f:boolean;
     a:array[1..12]of byte;
begin
clrscr;
randomize;
m:=2;
for i := 1 to 12 do
  begin
    repeat
      f:=false;
      x:=Random(90)+1;
      for j:=1 to m do
      if a[j]=x then f:=true;
    until f=false;
    a[i]:=x;
    m:=m+1;
  end;
for i:=1 to 12 do
write(a[i],' ');
readln
end.
puporev вне форума
Старый 01.04.2008, 11:24   #13
Rusl92
Форумчанин
 
Аватар для Rusl92
 
Регистрация: 30.03.2008
Сообщений: 392
По умолчанию

Не, погодите, а значения элементов массива откуда берем? Они же не заданы?
Программирование - это великое искусство... Такое же как например и живопись!
Rusl92 вне форума
Старый 01.04.2008, 11:59   #14
[Smarik]
Веб-разработчик
Форумчанин
 
Аватар для [Smarik]
 
Регистрация: 16.01.2008
Сообщений: 451
По умолчанию

Цитата:
Сообщение от puporev Посмотреть сообщение
Код:
a[i]:=x;
end.
Вот тут заполнение массива
Я ваш новый друг, смиритесь!
[Smarik] вне форума
Старый 01.04.2008, 12:14   #15
Rusl92
Форумчанин
 
Аватар для Rusl92
 
Регистрация: 30.03.2008
Сообщений: 392
По умолчанию

if a[j]=x then f:=true;
А как мы тогда сравниваем?
Программирование - это великое искусство... Такое же как например и живопись!
Rusl92 вне форума
Старый 01.04.2008, 12:46   #16
Plague
Забанен
Форумчанин Подтвердите свой е-майл
 
Аватар для Plague
 
Регистрация: 01.11.2006
Сообщений: 420
По умолчанию

Множество! Знаете что такое?
Код:
var a,i:byte;
   m:set of byte;
begin
m:=[];
randomize;
for i:=1 to 12 do
begin
repeat
a:=random(90)+1;
until not (a in m);
include(m,a);
write(a:4);
end
end.
Если ничто другое не помогает, прочтите, наконец, инструкцию! Аксиома Кана
Plague вне форума
Старый 25.04.2011, 19:11   #17
Олег093
Пользователь
 
Регистрация: 17.04.2011
Сообщений: 18
По умолчанию

а как сделать так чтобы после заполнения матрицы сумма всех ее элементов была допустим 8,т.е.рандомно заполнить числами так,чтобы сумма всех элементов была равна 8...
Олег093 вне форума
Старый 25.04.2011, 19:30   #18
New man
Форумчанин
 
Регистрация: 24.01.2011
Сообщений: 774
По умолчанию

Для ТС
Код:
program Ameba;
var
   mn:Set of integer;
   i,j:integer;
begin
   mn:=[];
   i:=0;
   while i<12 do
     begin
        j:= random(90)+1;
        if not (j in mn) then
           begin
              writeln(j);
              Include(mn,j);
              inc(i);
           end; 
     end;
    readln;
end.
a.k.a. Angelicos Phosphoros
Мой сайт

Последний раз редактировалось New man; 25.04.2011 в 19:33.
New man вне форума
Старый 25.04.2011, 19:38   #19
Олег093
Пользователь
 
Регистрация: 17.04.2011
Сообщений: 18
По умолчанию

а где тут эта сумма?
Олег093 вне форума
Закрытая тема


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

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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите плз с задачкой Dendy Паскаль, Turbo Pascal, PascalABC.NET 6 05.02.2008 22:16
Линейный однозвязаный список, помогите плиз с задачкой Vasek Общие вопросы C/C++ 2 14.01.2008 03:28
Помогите с задачкой Sour Помощь студентам 9 08.05.2007 20:56