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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
klubni4ka
1 / 1 / 0
Регистрация: 11.01.2011
Сообщений: 99
#1

создание и сортировка массива - C++

19.11.2011, 09:53. Просмотров 462. Ответов 7
Метки нет (Все метки)

Здравствуйте!помогите, пожалуйста, сделать задание.
не была на теме, теперь проблемы.
заранее, огромное спасибо.
Написать программу создания одномерного массива, заполнить его случайными вещественными значениями от -89 до 89. Отсортировать его по возрастанию. Вывести значения элементов массива на экран так, чтобы после десятичной точки было два знака.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.11.2011, 09:53     создание и сортировка массива
Посмотрите здесь:

Создание и сортировка связного списка - C++
Задание: Написать программу, реализующую связный список с информацией о сотрудниках и отображающую список в порядке возрастания возраста...

Создание нового массива из определенных элементов другого массива - C++
Здравствуйте. Мне нужно создать одномерный массив из элементов двумерного массива. Как можно это сделать? Как объявить массив, чтоб он не...

Создание матрицы и сортировка, используя несколько функций - C++
Доброго времени суток, всем пользователям. Нуждаюсь в помощи, имею код, в котором лишь используется 1 функция int main (); Но согласно...

Сортировка двух векторов, создание третьего и запись в файл - C++
Необходимо отсортировать два вектора int таким образом чтобы сохранить результат в третий вектор, выбрав только те числа которые...

Сортировка массива - C++
Отсортировать время по возрастанию. пожалуйста помогите. Часы(hours) - от 0 до 23 Минуты (minutes) - от 0 до 60 секунды (seconds) -...

Сортировка массива - C++
Сгенерировать и вывести на экран одномерный массив Y {yi} в диапазоне целых чисел . Сформировать массив Z из парных элементов массива Y....

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
easybudda
Эксперт CЭксперт С++
9470 / 5483 / 927
Регистрация: 25.07.2009
Сообщений: 10,508
19.11.2011, 12:12     создание и сортировка массива #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
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <math.h>
 
double frand(double bottom, double top){
    return (top - bottom)*fabs(sin(rand())) + bottom;
}
 
int asc_cmp(const void * a, const void * b){
    double d = *(double*)a - *(double*)b;
    return ( d < 0.0 ) ? -1 : ( d > 0.0 ) ? 1 : 0;
}
 
#define SIZE 10
#define BOTTOM (-89)
#define TOP 89
 
int main(void){
    double arr[SIZE];
    size_t i;
    
    srand(time(NULL));
    
    for ( i = 0; i < SIZE; ++i )
        arr[i] = frand(BOTTOM, TOP);
    
    printf("Unsorted:\n");
    for ( i = 0; i < SIZE; ++i )
        printf("%.2f%c", arr[i], ( i < SIZE - 1 ) ? ' ' : '\n');
    
    qsort(arr, SIZE, sizeof(double), asc_cmp);
    
    printf("Sorted ascendant:\n");
    for ( i = 0; i < SIZE; ++i )
        printf("%.2f%c", arr[i], ( i < SIZE - 1 ) ? ' ' : '\n');
    
    exit(0);
}
Ilyawow
24 / 24 / 5
Регистрация: 18.11.2011
Сообщений: 266
19.11.2011, 12:39     создание и сортировка массива #3
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
#include<stdio.h>
#include<stdlib.h>
#include<conio.h>
int random (int N)
{
    return rand() %N;
}
 
main()
{
      int N=10,i,a=-89,b=89,nMin=0,j;
      float A[N],c;
      for(i=0;i<N;i++)
      {        
                      A[i]=1.*(b-a)*rand() / RAND_MAX + a; 
                      }
                      for(i=0;i<N-1;i++)
                      {
                                        nMin = i ;
  for ( j =  i+1; j < N; j ++)
    if( A[j] < A[nMin] ) nMin = j; 
  if( nMin != i ) {
    c = A[i]; 
    A[i] = A[nMin]; 
    A[nMin] = c;
    }
 
}
for(i=0;i<N;i++)
printf("%f\n",A[i]);
getch();
}
вот код попроще в понимание

Добавлено через 1 минуту
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
#include<stdio.h>
#include<stdlib.h>
#include<conio.h>
int random (int N)
{
    return rand() %N;
}
 
main()
{
      int N=10,i,a=-89,b=89,nMin=0,j;
      float A[N],c;
      for(i=0;i<N;i++)
      {        
                      A[i]=1.*(b-a)*rand() / RAND_MAX + a; 
                      }
                      for(i=0;i<N-1;i++)
                      {
                                        nMin = i ;
  for ( j =  i+1; j < N; j ++)
    if( A[j] < A[nMin] ) nMin = j; 
  if( nMin != i ) {
    c = A[i]; 
    A[i] = A[nMin]; 
    A[nMin] = c;
    }
 
}
for(i=0;i<N;i++)
printf("%.2f\n",A[i]);
getch();
}
вот я переделал чтоб после точки было 2 знака
easybudda
Эксперт CЭксперт С++
9470 / 5483 / 927
Регистрация: 25.07.2009
Сообщений: 10,508
19.11.2011, 12:57     создание и сортировка массива #4
Ilyawow, функция random() - сама себе функция? При каждом вызове будут одни и те же числа выводиться - srand() не хватает...
Ilyawow
24 / 24 / 5
Регистрация: 18.11.2011
Сообщений: 266
19.11.2011, 13:44     создание и сортировка массива #5
Немогбы указать куда именно ,а то чет не пойму.Уже везде впихивал а всеравно выдает одни и те же числа

Добавлено через 14 минут
И кстате функция rendom нужна но не в этой программе, а в работе с натуральными числами без функции компилютор выдает ошибку .
go
Эксперт C++
3586 / 1366 / 128
Регистрация: 16.04.2009
Сообщений: 4,528
19.11.2011, 14:09     создание и сортировка массива #6
Ilyawow, после объявления переменных напиши
C
1
srand (time (NULL));
И не забудь подключить библиотеку
C
1
#include <time.h>
Ilyawow
24 / 24 / 5
Регистрация: 18.11.2011
Сообщений: 266
19.11.2011, 14:20     создание и сортировка массива #7
go Спасибо что подсказал
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.11.2011, 15:37     создание и сортировка массива
Еще ссылки по теме:

сортировка массива - C++
это код сортировки массива: #include &lt;iostream&gt; #include &lt;conio.h&gt; using namespace std; int main() {int mass; int...

сортировка массива - C++
нужно найти ошибку..у меня не получается( // efficient_sort.cpp: определяет точку входа для консольного приложения. // #include...

сортировка массива - C++
здравствуйте, посоветуйте пожалуйста, каким образом можно сортировать двумерный массив, если понятен принцип для одномерного отсортировал...

Сортировка массива - C++
Уважаемые посоветуйте быстрый алгоритм сортировки массива без рекурсии, массивы размером ~250 000 - 1 000 000 элементов, диапазон значений...


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

Или воспользуйтесь поиском по форуму:
klubni4ka
1 / 1 / 0
Регистрация: 11.01.2011
Сообщений: 99
19.11.2011, 15:37  [ТС]     создание и сортировка массива #8
спасибо огроооооомное, easybudda,Ilyawow,go !!!
Ilyawow, не могли бы вы написать к каждой строчке пояснение, если не трудно.
просто мне защищать надо будет, да и вообще не люблю тупо списывать, хотелось бы понимать что пишу.
Yandex
Объявления
19.11.2011, 15:37     создание и сортировка массива
Ответ Создать тему
Опции темы

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