Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.56/18: Рейтинг темы: голосов - 18, средняя оценка - 4.56
5 / 5 / 1
Регистрация: 28.03.2010
Сообщений: 94
1

Сгенерировать массив целых случайных чисели написать функцию SORT

21.04.2010, 23:14. Просмотров 3775. Ответов 8
Метки нет (Все метки)

Сгенерировать массив целых случайных чисел. Диапазон значений и количество элементов массива задать как символьные константы. Написать функцию Sort, сортирующую элементы массива. Функция ничего не возвращает, а в качестве параметров в нее передается массив и количество элементов массива.

Помогите пожалуйста, вообще без понятия как такую штуку сделать.
1
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
21.04.2010, 23:14
Ответы с готовыми решениями:

Написать программу, которая должна сгенерировать массив из 1000000 случайных целых чисел и записать их в файл
Задание. Написать программу, которая должна сгенерировать массив и з 1000000 (один миллион)...

Сгенерировать массив из 40 целых случайных значений
Помогите люди добрые... Написать программу на языке Object Pascal, которая генерирует...

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

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

8
20 / 4 / 1
Регистрация: 10.04.2010
Сообщений: 54
22.04.2010, 05:33 2
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
47
48
49
50
51
52
53
54
55
56
57
58
59
#include<conio.h>
#include<stdio.h>
#include<stdlib.h>
void Sort(int*A , int n) //Puzirkovaja sortirovka
 
{
      int i , j , temp ;
      for( i = n - 1 ; i>0 ; i--)
      {
        for(j = 0 ; j< i  ; j ++)
           {
                if(A[j]>A[j+1])
                 {
                    temp = A[j] ;
                    A[j] = A[j+1] ;
                    A[j+1] = temp ;
 
                 }
 
           }
 
 
 
      }
 
}
 
 
 
void print( int*A,int n )
{
    int i ;
    for(i = 0 ; i < n ; i++ )
 
       printf("%5d",A[i]) ;
       printf("\n") ;
 
}
 
void main()
{
    clrscr() ;
    randomize() ;
    int i ;
    int*A ;
    char*d = "20"    ;
    char*kol = "12"  ;
 
    for( i = 0 ; i < atoi(kol) ; i++ )
      A[i] = random(atoi(d)) ;
   print( A , atoi(kol) ) ;
   Sort( A , atoi(kol) ) ;
   print( A , atoi(kol) ) ;
 
 
 
   getch() ;
 
}
1
5 / 5 / 1
Регистрация: 28.03.2010
Сообщений: 94
22.04.2010, 10:34  [ТС] 3
У меня что то при компилировании ошибки выкидывает такие :

Error 1 error C3861: 'clrscr': identifier not found c:\documents and settings\viktor\my documents\visual studio 2008\projects\432\432\432.cpp 46 432


Error 2 error C3861: 'randomize': identifier not found c:\documents and settings\viktor\my documents\visual studio 2008\projects\432\432\432.cpp 47 432


Error 3 error C3861: 'random': identifier not found c:\documents and settings\viktor\my documents\visual studio 2008\projects\432\432\432.cpp 54 432
0
Эксперт С++
5017 / 2596 / 241
Регистрация: 07.10.2009
Сообщений: 4,311
Записей в блоге: 1
22.04.2010, 10:42 4
Цитата Сообщение от kolxoznik1 Посмотреть сообщение
У меня что то при компилировании ошибки выкидывает такие :
Это нормально, ибо таких команд не существует в чистом Си++

Добавлено через 5 минут
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
#include <cstdlib>
#include <iostream>
#include <algorithm>
 
void random(int *a, int size)
{
   while(size--)
      *a++ = rand() % 9;
}
 
void sort(int *a, int size)
{
   for(int i = 0; i < size; ++i)
      for(int j = size - 1; j > i; --j)
         if(a[j-1] > a[j])
         {
            int t = a[j-1];
            a[j-1] = a[j];
            a[j] = t;
         }
}
 
int main()
{
   // инициализация массива
   const int size = 10;
   int a[size];
 
   // заполнение случайными числами
   random(a, size);
 
   // вывод на экран
   std::copy(a, a + size, std::ostream_iterator<int>(std::cout, " "));
   std::cout << std::endl;
 
   // сортировка
   sort(a, size);
 
   // вывод на экран
   std::copy(a, a + size, std::ostream_iterator<int>(std::cout, " "));
   std::cout << std::endl;
 
   system("pause");
}
если вывод на экран не понятен, напиши свой, думаю в этом проблем не должно быть
1
20 / 4 / 1
Регистрация: 10.04.2010
Сообщений: 54
22.04.2010, 10:44 5
Цитата Сообщение от kolxoznik1 Посмотреть сообщение
projects\432\432\432.cpp 46 432
kolxoznik1, не слушайте меня больше
0
fasked
22.04.2010, 10:49
  #6

Не по теме:

Цитата Сообщение от recursija Посмотреть сообщение
не слушайте меня больше
Что же Вы. Написали то все верно, но я бы не советовал пользоваться функциями из <conio.h>, не подключайте этот заголовок и все будет хорошо =)

0
20 / 4 / 1
Регистрация: 10.04.2010
Сообщений: 54
22.04.2010, 10:53 7
ну а как еще случайно задать чила?(я писала в BC.311)
0
Эксперт С++
5017 / 2596 / 241
Регистрация: 07.10.2009
Сообщений: 4,311
Записей в блоге: 1
22.04.2010, 11:11 8
Цитата Сообщение от recursija Посмотреть сообщение
ну а как еще случайно задать чила?(я писала в BC.311)
Пользоваться надо функцией rand() из <stdlib.h>
Например, как привел пример выше:
C
1
2
3
4
5
void random(int *a, int size)
{
   while(size--)
      *a++ = rand() % 9;
}
Функция принимает указатель на массив и размер:
C
1
int a[10]; random(a, 10);
и вуаля - массив заполнен случайными числами (от 0 до 9)
1
48 / 48 / 13
Регистрация: 21.04.2009
Сообщений: 265
22.04.2010, 13:33 9
Мой вариант. А вообще то, здесь на форуме такая задача рассматривалась неоднократно.

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
47
#include <cstdlib>
#include <iostream>
 
 
using namespace std;
 
 
void sort(int*, int);
const int size = 15;
 
int main(int argc, char *argv[])
{
    int arr[size];
    int i;
    
    for(i=0; i<size; i++)
       arr[i] = rand() % 10 + 1;
    
    sort(arr, size);
    for(i=0; i<size; i++)   
    {
             cout << arr[i] << " ";
             
    }
    cout << "\n";
    
    
    
    system("PAUSE");
    return EXIT_SUCCESS;
}
void sort(int* a , int s)
{
    int i, j, tmp;
    for(i=0; i<size; i++)
    {
         for(j=0; j<size - i - 1; j++)
         {
                  if(a[j] >  a[j+1])
                  {
                          tmp = a[j];
                          a[j] = a[j+1];
                          a[j+1] = tmp;
                  }
         }
    }
}
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
22.04.2010, 13:33

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Сгенерировать массив, содержащий 40 целых случайных значений из заданного диапазона
1) Написать программу на языке Pascal, которая генерирует массив, содержащий 40 целых случайных...

Сгенерировать массив, содержащий 40 целых случайных значений из заданного набора
Написать программу на языке Pascal, которая генерирует массив, содержащий 40 целых случайных...

Сгенерировать динамический массив из N случайных целых чисел, заданных в интервале от Q до P
Сгенерировать динамический массив из N случайных целых чисел, заданных в интервале от Q до P...

Сгенерировать 10 случайных целых чисел в диапазоне от N до M
Сгенерировать 10 случайных целых чисел в диапазоне от N до M var n,m,a,i:integer; begin...


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

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.