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

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

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

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

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

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 26.04.2015, 18:58   #1
Sterben
Форумчанин
 
Аватар для Sterben
 
Регистрация: 01.03.2015
Сообщений: 118
По умолчанию Как заполнить массив рандомными числами (Си)

Код:
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
void sortInsertion(int A[],int strok)
{
    int i,j,sort,M=0,count=0;
    for (i=1; i <strok; i++){
            sort=A[i];
                for(j=i-1;j>=0 &&(++count,A[j]>sort);j--){
                    A[j+1]=A[j];
        A[j]= sort;
        M+=3;
        }
    }
    for (i = 0; i < strok; ++i){
        printf("%d ", A[i]);}
        printf("\nM=%d ",M);
        printf("\ncount=%d ",count);
}
void bubblesort(int A[],int strok)
{
    int i,j,M=0,count=0,sort;
    for(i=2;i<strok+1;i++){
            for(j=strok-1;j>=i-1;j--)
            {
                if(A[j-1]>A[j]){
                    count++;
                sort=A[j-1];
                A[j-1]=A[j];
                A[j]=sort;
                M+=3;}
                else
                    count++;}}
                    printf("\nsort\n");
                    for(i=0;i<strok;i++)
                printf("%d",A[i]);
                printf("\nM=%d\n",M);
              printf("Count=%d\n",count);
}
int main()
{printf("Input number of digits in array");
printf("\n10,100,1000,10000\n");
    int i,j,strok,*A,choice;
    scanf("%i",&strok);
    A=(int*)malloc(sizeof(int)*strok);
    printf("1.min\n");
    printf("2.mid\n");
    printf("3.max\n");
    int input;
    scanf("%d",&input);
    switch(input){
    case 1:
        {   for(i=0;i<strok;i++){
                A[i]=i;
                printf("%d ",A[i]);

        }
                        break;
            }

    case 2:
            {  for(i=0;i<strok;i++){
                A[i]=rand()%strok;
                printf("%d ",A[i]);
            }
                            break;
            }

    case 3:
        {       for(i=0;i<strok;i++){
                A[i]=strok-i;
                printf("%d  ", A[i]);
                }
                break;
            }
    }
do{
    printf("\nInput number of your choice\n");
    printf("1 - SortInsertion.\n");
    printf("2 - BubbleSort.\n");
        printf("3 - End.\n");

        scanf("%i", &choice);
         switch(choice)
        {
        case 1:
            {
                sortInsertion(A, strok);
                break;
            }
        case 2:
            {
                bubblesort(A, strok);
                break;
            }
        case 3:
            {
                break;
            }
        }
}while(choice !=1 && choice !=2 && choice !=3);
    free (A);
    return 0;
}
Проблема в том что генерирует одни и те же числа,как это убрать?
Sterben вне форума
Старый 26.04.2015, 19:39   #2
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,291
По умолчанию

http://www.cplusplus.com/reference/cstdlib/srand/
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
BDA вне форума
Старый 26.04.2015, 19:51   #3
Sterben
Форумчанин
 
Аватар для Sterben
 
Регистрация: 01.03.2015
Сообщений: 118
По умолчанию

Спасибо,сделал.
Sterben вне форума
Закрытая тема


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Заполнить массив случайными числами и выделить в другой массив все числа, которые встречаются более darkland Паскаль, Turbo Pascal, PascalABC.NET 2 04.03.2014 20:44
Массив с рандомными числами С++ Arrioh Помощь студентам 4 11.04.2012 14:08
Как заполнить двумерный массив случайными числами? SkuLLL Помощь студентам 1 14.12.2010 17:04
Как заполнить массив вещественными числами new-in-c Общие вопросы C/C++ 1 03.05.2010 10:54
как в с помощью random заполнить одномерный массив вещественными числами Deniska112 Общие вопросы C/C++ 2 04.06.2009 09:36