Форум программистов, компьютерный форум CyberForum.ru

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

Восстановить пароль Регистрация
 
 
Рейтинг: Рейтинг темы: голосов - 15, средняя оценка - 4.80
Michael_Label
-20 / 1 / 0
Регистрация: 28.07.2011
Сообщений: 17
29.07.2011, 14:09     Помогите написать программку - лотерею #1
Я сам только окончил первый курс технаря...учусь отлично...решил, что пока каникулы, заняться изучением C++......как-то он меня увлек....вчера в голову пришла идея, написать программку - лотерею...типа вводишь несколько чисел подряд, программка их перебирает и выводит какое-то число на экран....
P.s. программка легкая, но я повторюсь, что я занимаюсь самостоятельным изучением.....помогите пожалуйста с этой программкой, мне интересна её структура, как она выглядит сама по себе........очень выручите)))

 Комментарий модератора 
Запрещено создавать темы с бессмысленными названиями вроде "Помогите!", "Вопрос" и т.п.
Правила форума
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.07.2011, 14:09     Помогите написать программку - лотерею
Посмотрите здесь:

программку написать C++
Не могу написать программку C++
C++ Необходимо написать программку..
Помогите написать программку) C++
Помогите сделать программку на С++ C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Jupiter
Каратель
Эксперт C++
6542 / 3962 / 226
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
29.07.2011, 14:14     Помогите написать программку - лотерею #2
очень и очень сомнительно, много неувязок, если вы действительно
Цитата Сообщение от Michael_Label Посмотреть сообщение
решил, что пока каникулы, заняться изучением C++
то надо бы подумать самому, ну уж в крайнем случае показать свои нароботки

Цитата Сообщение от Michael_Label Посмотреть сообщение
мне интересна её структура
структура такая же как и всех остальных программ написаных одним и тем же человеком на определенном этапе изучения программирования
ValeryS
Модератор
6373 / 4839 / 440
Регистрация: 14.02.2011
Сообщений: 16,038
29.07.2011, 14:16     Помогите написать программку - лотерею #3
вводишь числа в массив
потом генеришь случайное число от 0 до размера массива-1
это число и будет индексом массива которое выводишь на экран
Michael_Label
-20 / 1 / 0
Регистрация: 28.07.2011
Сообщений: 17
29.07.2011, 14:19  [ТС]     Помогите написать программку - лотерею #4
Цитата Сообщение от Maxwe11 Посмотреть сообщение
очень и очень сомнительно, много неувязок, если вы действительно
Сообщение от Michael_Label
решил, что пока каникулы, заняться изучением C++
то надо бы подумать самому, ну уж в крайнем случае показать свои нароботки
Я могу показать, но там ничего дельного нет(
Jupiter
Каратель
Эксперт C++
6542 / 3962 / 226
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
29.07.2011, 14:20     Помогите написать программку - лотерею #5
Цитата Сообщение от Michael_Label Посмотреть сообщение
Я могу показать, но там ничего дельного нет(
показывайте
Michael_Label
-20 / 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 минуту
Я эту программку вообще не пойму как делать......(((
neske
1419 / 786 / 55
Регистрация: 26.03.2010
Сообщений: 2,689
29.07.2011, 14:24     Помогите написать программку - лотерею #7
Michael_Label, решили начать изучать язык? - прекрасно.
Возьмите книгу, и читайте. Для начала напишите правильно программу "Hello, world", а со временем, можно и к лотереи вернуться.
easybudda
Модератор
Эксперт С++
 Аватар для easybudda
9371 / 5421 / 914
Регистрация: 25.07.2009
Сообщений: 10,423
29.07.2011, 14:24     Помогите написать программку - лотерею #8
Цитата Сообщение от ValeryS Посмотреть сообщение
вводишь числа в массив
потом генеришь случайное число от 0 до размера массива-1
это число и будет индексом массива которое выводишь на экран
Вот бы в Спорт-Лото переполох начался, если бы из барабана два шара с числом 13 достали...
Так не получится - одно и то же число может выпасть.
Michael_Label
-20 / 1 / 0
Регистрация: 28.07.2011
Сообщений: 17
29.07.2011, 14:25  [ТС]     Помогите написать программку - лотерею #9
neske, я не понимаю массивы........операторы цикла, условия уже изучил....

....я в начале лета по самоучителю начал заниматься СИшкой....а вот массивы не могу понять
neske
1419 / 786 / 55
Регистрация: 26.03.2010
Сообщений: 2,689
29.07.2011, 14:26     Помогите написать программку - лотерею #10
Еще раз читайте. Возьмите другую книгу, там посмотрите.
ValeryS
Модератор
6373 / 4839 / 440
Регистрация: 14.02.2011
Сообщений: 16,038
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 еще раз генерим
решений то куча
Michael_Label
-20 / 1 / 0
Регистрация: 28.07.2011
Сообщений: 17
29.07.2011, 14:35  [ТС]     Помогите написать программку - лотерею #12
ValeryS, а вы не можете написать мне код этой программки???
ValeryS
Модератор
6373 / 4839 / 440
Регистрация: 14.02.2011
Сообщений: 16,038
29.07.2011, 14:37     Помогите написать программку - лотерею #13
Могу, А смысл
Xentar
Of Wolf and Man
 Аватар для Xentar
993 / 188 / 4
Регистрация: 09.07.2008
Сообщений: 1,885
29.07.2011, 14:37     Помогите написать программку - лотерею #14
Я думаю что тебе необходимо вначале понять что есть массивы и сделать простую программу ввода и вывода массива.
Что тебе в массиве именно непонятно?
Michael_Label
-20 / 1 / 0
Регистрация: 28.07.2011
Сообщений: 17
29.07.2011, 14:38  [ТС]     Помогите написать программку - лотерею #15
Смысл есть) Личный)))
easybudda
Модератор
Эксперт С++
 Аватар для easybudda
9371 / 5421 / 914
Регистрация: 25.07.2009
Сообщений: 10,423
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;
}
А про неповторяющиеся последовательности случайных чисел тут на форуме много уже было. Поискать попробуйте...
OstapBender
 Аватар для OstapBender
581 / 519 / 35
Регистрация: 22.03.2011
Сообщений: 1,585
29.07.2011, 14:45     Помогите написать программку - лотерею #17
есть идея просто сделать std::random_shuffle с массивом и взять первые 5 чисел

выше на языке С уже привели алгоритм
Michael_Label
-20 / 1 / 0
Регистрация: 28.07.2011
Сообщений: 17
29.07.2011, 14:45  [ТС]     Помогите написать программку - лотерею #18
easybudda, =) не знаю чем, но он меня конкретно заинтересовал - спасибо за ответы...буду читать, познавать)
ValeryS
Модератор
6373 / 4839 / 440
Регистрация: 14.02.2011
Сообщений: 16,038
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"); // чтобы окно не закрылось
}
вот накидал тебе на основе твоей
массив статический(т.е размер известен зарание)
но до настоящей лотереи там еще работать и работать
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
29.07.2011, 15:10     Помогите написать программку - лотерею
Еще ссылки по теме:

Нужно написать программку! C++
Написать программку на С++. Массив C++

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

Или воспользуйтесь поиском по форуму:
grizlik78
Эксперт C++
 Аватар для grizlik78
1882 / 1414 / 101
Регистрация: 29.05.2011
Сообщений: 2,958
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 минуту
Правда чтобы это действительно было "спортлото" надо ещё каждому числу вид спорта сопоставить и называть его
Yandex
Объявления
29.07.2011, 15:10     Помогите написать программку - лотерею
Ответ Создать тему
Опции темы

Текущее время: 23:35. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru