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

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

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

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

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

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 05.08.2009, 13:39   #1
Doublefaced
Форумчанин
 
Регистрация: 01.03.2009
Сообщений: 100
По умолчанию Подпрограмма определяющая вероятность выпадения счастливого билетика.

Цитата:
Написать подпрограмму, которая определяет вероятность выпадения «счастливого билетика» в заданном диапазоне.
Помогите с программой. Я даже не понимаю, что от меня требутсяпаскаль

Последний раз редактировалось Doublefaced; 05.08.2009 в 13:44.
Doublefaced вне форума
Старый 05.08.2009, 14:02   #2
Utkin
Старожил
 
Аватар для Utkin
 
Регистрация: 04.02.2009
Сообщений: 17,351
По умолчанию

1. Определить по какому принципу комбинация на билете считается счастливой (в Гугле).
2. Посчитать вероятность выпадения комбинации счастливого билетика (а на заданном диапазоне их наверняка много).
Маньяк-самоучка
Utkin появился в результате деления на нуль.
Осторожно! Альтернативная логика
Utkin вне форума
Старый 05.08.2009, 14:07   #3
Levsha100
Заблокирован
Старожил
 
Регистрация: 20.07.2008
Сообщений: 4,032
По умолчанию

Помогу:
Код:
н=0;
Цикл от 0 до Макс
  если сумма левых 3 элементов == сумма правых 3 элементов то
     н=н+1;
Levsha100 вне форума
Старый 05.08.2009, 14:08   #4
TAVulator
Программист
Форумчанин
 
Аватар для TAVulator
 
Регистрация: 23.07.2009
Сообщений: 101
По умолчанию

элементарная задача же!
если брать, что счастливый билет - это билет, в котором сумма первых трех цифр равна сумме последних трех цифр.Например:121202.
то вот решение на эту задачу:
Код:
var
 i,a,b,n: longint;
begin
 a:=111111;
 b:=111222;
 n:=0;
 For i:=a to b do
  If ((i div 100000)+
     ((i div 10000) mod 10)+
     ((i div 1000)mod 10))=
    (((i div 100)mod 10)+
     ((i div 10)mod 10)+
      (i mod 10))
  then inc(n);
 writeln(n);
end.
a и b - диапазон
n - количество счастливых билетов.
Если вы верите, что можете или не можете
сделать что-то, вы правы в обоих случаях.

______________________________(С) Г.Форд
TAVulator вне форума
Старый 05.08.2009, 14:21   #5
Doublefaced
Форумчанин
 
Регистрация: 01.03.2009
Сообщений: 100
По умолчанию

Код:
program Project1;
 
{$APPTYPE CONSOLE}
 
const
  z = 6;
type
  ar2 = array[1..z] of integer;
var
  ch : real;
  n, m : longint;
 
procedure chance_succ(n, m : longint; var result : real);
var
  b : ar2;
  i, tmp : longint;
  count : integer;
  j : byte;
begin
  count := 0;
  for i:=n to m do
  begin
    tmp := i;
    for j:=1 to z do
    begin
      b[j] := tmp mod 10;
      tmp := tmp div 10;
    end;
  if (b[1]+b[2]+b[3]) = (b[4]+b[5]+b[6]) then inc(count);
  end;
 
  result := (count*100)/(m-n);
 
end;
 
begin
write('Vvedite promeshutok ot n до m: ');
read(n,m);
chance_succ(n,m,ch);
 
write('Veroyatnost: ',ch:4:2,'%');
readln;
end.
Примерно так. но почему то всегда выводит 0%

Последний раз редактировалось Stilet; 05.08.2009 в 14:31.
Doublefaced вне форума
Старый 05.08.2009, 14:25   #6
TAVulator
Программист
Форумчанин
 
Аватар для TAVulator
 
Регистрация: 23.07.2009
Сообщений: 101
По умолчанию

если тебе надо с процентами, то вот:
Код:
var
 i,a,b,n: longint;
begin
 a:=111111;
 b:=111222;
 n:=0;
 For i:=a to b do
  If ((i div 100000)+
     ((i div 10000)mod 10)+
     ((i div 1000)mod 10))=
    (((i div 100)mod 10)+
     ((i div 10)mod 10)+
      (i       mod 10))
  then inc(n);
 writeln(((n*100) div (b-a)),'%');
 readln;
end.
Если вы верите, что можете или не можете
сделать что-то, вы правы в обоих случаях.

______________________________(С) Г.Форд
TAVulator вне форума
Старый 05.08.2009, 14:41   #7
Doublefaced
Форумчанин
 
Регистрация: 01.03.2009
Сообщений: 100
По умолчанию

То есть 111111 222333
Вероятность 5.22% это верно?
Doublefaced вне форума
Старый 05.08.2009, 14:52   #8
TAVulator
Программист
Форумчанин
 
Аватар для TAVulator
 
Регистрация: 23.07.2009
Сообщений: 101
По умолчанию

5808 из 111222 это 5.22%
почему бы и нет?
Если вы верите, что можете или не можете
сделать что-то, вы правы в обоих случаях.

______________________________(С) Г.Форд
TAVulator вне форума
Старый 05.08.2009, 14:55   #9
Doublefaced
Форумчанин
 
Регистрация: 01.03.2009
Сообщений: 100
По умолчанию

Спасибо. Просто хотел удостовериться, сам задачу не очень понял.
Doublefaced вне форума
Старый 05.08.2009, 15:00   #10
TAVulator
Программист
Форумчанин
 
Аватар для TAVulator
 
Регистрация: 23.07.2009
Сообщений: 101
По умолчанию

хы! запустил программу со значениями от 000001 до 999999 и узнал сколько всего может быть счастливых билетов:
55251 из 999998 5.53%
раньше не знал :-)
Если вы верите, что можете или не можете
сделать что-то, вы правы в обоих случаях.

______________________________(С) Г.Форд
TAVulator вне форума
Закрытая тема


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Делфи(Консоль) и C# - Подпрограммы(Вероятность выпадения «счастливого билетика» ) Doublefaced Помощь студентам 3 30.06.2009 22:15
Вероятность выйгрыша в казино. Izhic Свободное общение 7 17.06.2009 11:18
[ paskal] функция определяющая континент ohucheni Помощь студентам 2 13.03.2009 19:09
Задача (вероятность) Witaliy Помощь студентам 4 26.02.2009 09:45