Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.98/40: Рейтинг темы: голосов - 40, средняя оценка - 4.98
1 / 1 / 0
Регистрация: 28.07.2011
Сообщений: 17
1

Помогите написать программку - лотерею

29.07.2011, 14:09. Показов 7202. Ответов 24
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Я сам только окончил первый курс технаря...учусь отлично...решил, что пока каникулы, заняться изучением C++......как-то он меня увлек....вчера в голову пришла идея, написать программку - лотерею...типа вводишь несколько чисел подряд, программка их перебирает и выводит какое-то число на экран....
P.s. программка легкая, но я повторюсь, что я занимаюсь самостоятельным изучением.....помогите пожалуйста с этой программкой, мне интересна её структура, как она выглядит сама по себе........очень выручите)))

 Комментарий модератора 
Запрещено создавать темы с бессмысленными названиями вроде "Помогите!", "Вопрос" и т.п.
Правила форума
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
29.07.2011, 14:09
Ответы с готовыми решениями:

Помогите написать программку)
функция: http://hotimg23.fotki.com/a/89_189/191_51/-332.jpg Агрументы...

Помогите сделать программку на С++
Очень нужна ваша помощь по программированию. Лекции по работе с внешними файлами нам еще не читали,...

программку написать
плиззз пожалуйста помогите программа по зарез нужна чтоб на borland c++ 4.5 работала

Помогите сделать программку:С введенного текста вывести именно короткое слово.
С введенного текста вывести самое короткое слово.

24
Каратель
Эксперт С++
6609 / 4028 / 401
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
29.07.2011, 14:14 2
очень и очень сомнительно, много неувязок, если вы действительно
Цитата Сообщение от Michael_Label Посмотреть сообщение
решил, что пока каникулы, заняться изучением C++
то надо бы подумать самому, ну уж в крайнем случае показать свои нароботки

Цитата Сообщение от Michael_Label Посмотреть сообщение
мне интересна её структура
структура такая же как и всех остальных программ написаных одним и тем же человеком на определенном этапе изучения программирования
1
Модератор
Эксперт по электронике
8908 / 6677 / 918
Регистрация: 14.02.2011
Сообщений: 23,521
29.07.2011, 14:16 3
вводишь числа в массив
потом генеришь случайное число от 0 до размера массива-1
это число и будет индексом массива которое выводишь на экран
0
1 / 1 / 0
Регистрация: 28.07.2011
Сообщений: 17
29.07.2011, 14:19  [ТС] 4
Цитата Сообщение от Maxwe11 Посмотреть сообщение
очень и очень сомнительно, много неувязок, если вы действительно
Сообщение от Michael_Label
решил, что пока каникулы, заняться изучением C++
то надо бы подумать самому, ну уж в крайнем случае показать свои нароботки
Я могу показать, но там ничего дельного нет(
0
Каратель
Эксперт С++
6609 / 4028 / 401
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
29.07.2011, 14:20 5
Цитата Сообщение от Michael_Label Посмотреть сообщение
Я могу показать, но там ничего дельного нет(
показывайте
0
1 / 1 / 0
Регистрация: 28.07.2011
Сообщений: 17
29.07.2011, 14:23  [ТС] 6
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <iostream>
using namespace std;
int main (int argc, char* argv[])
{
    int n,I;
    int numbs[x];
    cout<<"Введите количество цифр через пробел\n";
    cin>>n;
     for(I= 0; I<n; I++ );
{
cout<<
cin >> numbs[x];
}
cout<<"Результат лотереи"<<numbs[x]<<endl;
}

Тут полная дребедень

Добавлено через 1 минуту
Я эту программку вообще не пойму как делать......(((
0
1552 / 918 / 193
Регистрация: 26.03.2010
Сообщений: 3,105
29.07.2011, 14:24 7
Michael_Label, решили начать изучать язык? - прекрасно.
Возьмите книгу, и читайте. Для начала напишите правильно программу "Hello, world", а со временем, можно и к лотереи вернуться.
0
Модератор
Эксперт PythonЭксперт JavaЭксперт CЭксперт С++
12458 / 7482 / 1753
Регистрация: 25.07.2009
Сообщений: 13,762
29.07.2011, 14:24 8
Цитата Сообщение от ValeryS Посмотреть сообщение
вводишь числа в массив
потом генеришь случайное число от 0 до размера массива-1
это число и будет индексом массива которое выводишь на экран
Вот бы в Спорт-Лото переполох начался, если бы из барабана два шара с числом 13 достали...
Так не получится - одно и то же число может выпасть.
0
1 / 1 / 0
Регистрация: 28.07.2011
Сообщений: 17
29.07.2011, 14:25  [ТС] 9
neske, я не понимаю массивы........операторы цикла, условия уже изучил....

....я в начале лета по самоучителю начал заниматься СИшкой....а вот массивы не могу понять
0
1552 / 918 / 193
Регистрация: 26.03.2010
Сообщений: 3,105
29.07.2011, 14:26 10
Еще раз читайте. Возьмите другую книгу, там посмотрите.
0
Модератор
Эксперт по электронике
8908 / 6677 / 918
Регистрация: 14.02.2011
Сообщений: 23,521
29.07.2011, 14:33 11
Цитата Сообщение от Michael_Label Посмотреть сообщение
for(I= 0; I<n; I++ );
{
cout<<
cin >> numbs[x];
}
ты уверен что тела цикла выполнится
что за x такая
почитай про массивы

Добавлено через 4 минуты
Цитата Сообщение от easybudda Посмотреть сообщение
Вот бы в Спорт-Лото переполох начался, если бы из барабана два шара с числом 13 достали...
Так не получится - одно и то же число может выпасть.
я же так примерно написал
а если не нужно два случайных числа
то можно и такой подход
массив
инициализируем все 0
выпало число записываем 1
если следующее сгенерированное число выдаст из массива 1 еще раз генерим
или в массив с числами при выпадении записываем -1
если -1 еще раз генерим
решений то куча
1
1 / 1 / 0
Регистрация: 28.07.2011
Сообщений: 17
29.07.2011, 14:35  [ТС] 12
ValeryS, а вы не можете написать мне код этой программки???
0
Модератор
Эксперт по электронике
8908 / 6677 / 918
Регистрация: 14.02.2011
Сообщений: 23,521
29.07.2011, 14:37 13
Могу, А смысл
0
Of Wolf and Man
999 / 198 / 5
Регистрация: 09.07.2008
Сообщений: 1,784
29.07.2011, 14:37 14
Я думаю что тебе необходимо вначале понять что есть массивы и сделать простую программу ввода и вывода массива.
Что тебе в массиве именно непонятно?
0
1 / 1 / 0
Регистрация: 28.07.2011
Сообщений: 17
29.07.2011, 14:38  [ТС] 15
Смысл есть) Личный)))
0
Модератор
Эксперт PythonЭксперт JavaЭксперт CЭксперт С++
12458 / 7482 / 1753
Регистрация: 25.07.2009
Сообщений: 13,762
29.07.2011, 14:42 16
Цитата Сообщение от ValeryS Посмотреть сообщение
если следующее сгенерированное число выдаст из массива 1 еще раз генерим
Ещё хлеще...
Цитата Сообщение от Michael_Label Посмотреть сообщение
я в начале лета по самоучителю начал заниматься СИшкой..
Просто из любопытства - откуда такое пренебрежение к языку, который только начинаете изучать? Вот простой пример на С
C
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
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
 
#define ALL_BALLS 36
#define NEEDED_BALLS 6
 
int madcmp(const void * a, const void * b) { return rand() - rand(); }
 
int main(void){
    int arr[ALL_BALLS], i;
    
    for ( i = 0; i < ALL_BALLS; ++i )
        arr[i] = i + 1;
    
    srand(time(NULL));
    qsort(arr, ALL_BALLS, sizeof(int), madcmp);
    
    printf("%d from %d:\n", NEEDED_BALLS, ALL_BALLS);
    for ( i = 0; i < NEEDED_BALLS; ++i )
        printf("%d ", arr[i]);
    printf("\n");
    
    return 0;
}
А про неповторяющиеся последовательности случайных чисел тут на форуме много уже было. Поискать попробуйте...
0
594 / 532 / 76
Регистрация: 22.03.2011
Сообщений: 1,585
29.07.2011, 14:45 17
есть идея просто сделать std::random_shuffle с массивом и взять первые 5 чисел

выше на языке С уже привели алгоритм
1
1 / 1 / 0
Регистрация: 28.07.2011
Сообщений: 17
29.07.2011, 14:45  [ТС] 18
easybudda, =) не знаю чем, но он меня конкретно заинтересовал - спасибо за ответы...буду читать, познавать)
0
Модератор
Эксперт по электронике
8908 / 6677 / 918
Регистрация: 14.02.2011
Сообщений: 23,521
29.07.2011, 15:03 19
#include <iostream>
using namespace std;
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
int main(int argc, _TCHAR* argv[])
{
        
        int x;
        int numbs[10];// массив куда будем вписыват числа
      for(int i= 0; i<10; i++ )//цикл для заполнеия массива
        {
        cout<<"input "<< i+1<<"=  ";// приглашения для ввода числа
        cin >> numbs[i];// вводим число и записываем в массив
        }
x=rand()%10-1;//случайное число
     cout<<"Output  "<<numbs[x]<<endl; // выводим результат из случайной ячейки
    system("PAUSE"); // чтобы окно не закрылось
}
вот накидал тебе на основе твоей
массив статический(т.е размер известен зарание)
но до настоящей лотереи там еще работать и работать
0
Эксперт С++
2381 / 1665 / 279
Регистрация: 29.05.2011
Сообщений: 3,399
29.07.2011, 15:10 20
Я тоже хочу! Лотерея "Спортлото 5 из 36"
C
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
#include <stdio.h>
#include <time.h>
#include <gsl/gsl_randist.h>
 
/* Количество выпавших "шаров" */
#define K 5
/* Общее количество "шаров" */
#define N 36
 
int main(void)
{
    int numbers[N], results[K], i;
    gsl_rng *r;
 
    /* Инициализиуем ГПСЧ */
    const gsl_rng_type *T = gsl_rng_default;
    r = gsl_rng_alloc(T);
    /* Начальное значение от текущего времени */
    gsl_rng_set(r, (unsigned)(time(NULL)));
 
    /* Создаём N "шаров" */
    for (i = 0; i < N; ++i)
        numbers[i] = i + 1;
 
    /* Перемешиваем шары */
    gsl_ran_shuffle (r, numbers, N, sizeof(numbers[0]));
 
    /* Вынимаем наугад K "шаров" (не обязательно, можно взять первые K) */
    gsl_ran_choose(r, results, K, numbers, N, sizeof(numbers[0]));
 
    /* Выводим результат */
    printf("Results:");
    for (i = 0; i < K; ++i)
        printf(" %d", results[i]);
    printf("\n");
 
    /* Освобождаем ресурсы */
    gsl_rng_free(r);
 
    return EXIT_SUCCESS;
}
Добавлено через 1 минуту
Правда чтобы это действительно было "спортлото" надо ещё каждому числу вид спорта сопоставить и называть его
2
29.07.2011, 15:10
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
29.07.2011, 15:10
Помогаю со студенческими работами здесь

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

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

Написать программку на С++. Массив
Написать программу на С++, которая формирует массив 5x5 и вычисляет сумму элементов массива, и...

Как написать программку на С++


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru