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

Рандом - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Операции создания каталога, изменения временного каталога, удаление файла и директории http://www.cyberforum.ru/cpp-beginners/thread240879.html
Написать программу, которая позволяет выполнять операции создания каталога, изменения временного каталога, удаление файла и директории (рекурсивно). Помогите решить пожалуйста
C++ Почему массив не хочет сортироваться? Ошибка. Почему массив не хочет сортироваться? #include "stdafx.h" #include<iostream> #include<conio.h> using namespace std; int max_element(int n,int array) {int hold=0; http://www.cyberforum.ru/cpp-beginners/thread240878.html
задержка времени C++
Господа програмисты не подскажите как задержать программу на определённое время.если можно самый примитивный исходник.заранее огромное спасибо!
Cумма отрицательных элементов массива C++
/*Дан массив из N элементов (вещественные числа). Вы- числить: 1) сумму отрицательных элементов массива; 2) произ- ведение элементов массива, расположенных между макси- мальным и минимальным элементами. Упорядочить элементы по возрастанию.*/ #include <iostream> #include <Windows.h> using namespace std; int main ()
C++ Не могу не как описать не которые строки в программе http://www.cyberforum.ru/cpp-beginners/thread240846.html
что обозначаеться prn_matrix int last_min
C++ делаю игру,но мешает getch Здравствуйте господа програмисты!делаю игру и вот какая штука-на экране должно быть движение,но getch ждёт от меня нажатия клавиши.Как это обойти,но так что бы если я нажимал на клавишу всё работало,т.е.что бы и движение было и клавиатура работала?Заранее всем огромное спасибо! подробнее

Показать сообщение отдельно
alex_x_x
бжни
 Аватар для alex_x_x
2441 / 1646 / 84
Регистрация: 14.05.2009
Сообщений: 7,163
10.02.2011, 20:25     Рандом
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
const size_t SIZE = 10;
 
int main()
{
    int x [SIZE] = {};
    srand(time(0));
    bool bIsNotExist;
    for( size_t i=0;i<SIZE;++i )
    {   
        bIsNotExist = true;
        do{        
          x [i] = rand () % 100;
          for( size_t j=0;j<i;++j ){
            if( x[i] == x[j] ){
              bIsNotExist = false;
              break;
            }
          }
        }while( false == bIsNotExist );
    }
 
    int max = x[0];
    int iMax = 0;
        
    for( size_t i=1;i<SIZE;++i )
    {
        if (x [i] > max)
        {
            x [i] = max;
            iMax = i;
        }
    }
    for(size_t i=0;i<SIZE;++i)
    {
        printf ("x[%d] = %d\n", i, x [i]);
    }
   
    printf ("\nMAX: x [%d] =  %d", iMax - 1, max);
    return 0;
}
не принимайте близко к сердцу

вижу сами разрешили, srand(time(0)) инициализирует генератор случайных чисел, его следует вызывать только один раз

и ящитаю, что нужно чаще for использовать (в пределе его можно везде использовать), особенно там где его применение очевидно (в случаях, когда колво итераций заранее известно)

Добавлено через 26 минут
вот правильный вариант

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
42
43
44
45
46
#include <cstdlib>
#include <cstdio>
#include <ctime>
 
const size_t SIZE = 10;
 
int main()
{
    int x [SIZE] = {};
    srand(time(0));
    bool bIsExist;
    for( size_t i=0;i<SIZE;++i )
    {   
        do{
          bIsExist = false;        
          x[i] = rand () % 15;
          printf( "(%d) ", x[i] );
          for( size_t j=0;j<i;++j ){
            if( x[i] == x[j] ){
              bIsExist = true;
              break;
            }
          }
        }while( bIsExist );
        printf( "x[%u]=%d ", i, x[i] );
    }
 
    int max = x[0];
    int iMax = 0;
        
    for( size_t i=1;i<SIZE;++i )
    {
        if (x [i] > max)
        {
            max = x[i];
            iMax = i;
        }
    }
    for(size_t i=0;i<SIZE;++i)
    {
        printf ("x[%u] = %d\n", i, x [i]);
    }
   
    printf ("\nMAX: x [%u] =  %d", iMax - 1, max);
    return 0;
}
 
Текущее время: 22:42. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru