Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.50/2: Рейтинг темы: голосов - 2, средняя оценка - 4.50
0 / 0 / 0
Регистрация: 20.01.2012
Сообщений: 19
1

Создал прогу в С++, я нуб, проверте меня, и поставте оценку

18.06.2012, 19:45. Просмотров 494. Ответов 9
Метки нет (Все метки)


Дан целочисленный массив A(n) с элементами, сгенерированными случайными числами в диапазоне (-20, 20). Требуется: Отсортировать по убыванию положительные элементы массива методом выбора.
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
#include<iostream.h>
#include<conio.h>
#include<stdlib.h>
void sort (int k[],int);
void main()
{ 
  int i,j,n,k,x[20],b[20];
  clrscr();
  gotoxy(29,4);
  cout<<"\Laboratornaya rabota N1";
  gotoxy(12,6);
  cout<<"\Otsortirovat' po ubiyvaniy pologitel'nye elementy massiva";
  gotoxy(29,7);
  cout<<"\metodom vybora";
  gotoxy(45,21);
  cout<<"Vypolnil student Aleksandrov Albert";
  getch();
  clrscr();
  cout<<"\n vvedite n ";
  cin>>n;
  randomize();
  for(i=0;i<n;i++)
  x[i]=random(40)-20;
  cout<<"ishodniy massiv\n";
  for (i=0;i<n;i++)
  cout<<x[i]<<" "; cout<<endl;
  k=-1;
  for (i=0;i<n;i++)
  if (x[i]>0)
{
  k++;b[k]=x[i];
       }
 cout<<"massiv iz pologitel'nyh elementov\n";
  for(i=0;i<=k;i++)cout<<b[i]<<"    ";
  cout<<endl;
  cout<<"posle sortirovki";
  cout<<endl;
  sort(b,k);
  getch();
  }
  void sort(int k[], int n)
{       
    int i,j,im,a;
    for (i=0; i<=n; i++)
    {
        im=i;
        for (j=i+1; j<=n; j++)
            {
            if (k[j]>k[im]) im = j;
            }              
        a=k[i]; k[i]=k[im]; k[im]=a;
        gotoxy(2+i*5,9);
        cout<<("%d ",k[i]);
           
    }
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
18.06.2012, 19:45
Ответы с готовыми решениями:

Поставте оценку
вот вам ссылка робота еще не положил да и ссылки не работают - мона и не клацать :) В орбщем...

Написал прогу, создал Release конфигурацию. Какие оттуда файлы нужны, чтоб передать прогу заказчику
там их 6 штук вышло. понимаю для чего myapp.exe -собственно сам exe myapp.exe.xml - там...

Проверте прогу. не полностю прощитевает
program qq; uses crt; var x,y,z:real; begin write('Vvedit x ='); readln(x); write('Vvedit y...

Какой выбрать конфиг проц + видеокарта ( тему создал нуб , так что строго не судите )
Добрый день , хочу обновить свой устаревший конфиг (i3 4130 + xfx r7700) на что-нибудь...

9
1184 / 540 / 78
Регистрация: 01.07.2009
Сообщений: 3,517
18.06.2012, 20:01 2
Цитата Сообщение от Brahmanchik Посмотреть сообщение
x[i]=random(40)-20;
Это диапазон от -20 до 19, а не
Цитата Сообщение от Brahmanchik Посмотреть сообщение
(-20, 20)
1
Форумчанин
Эксперт CЭксперт С++
8164 / 5012 / 1436
Регистрация: 29.11.2010
Сообщений: 13,455
18.06.2012, 20:39 3
C++
1
void main()
2
2
51 / 51 / 5
Регистрация: 02.01.2011
Сообщений: 503
18.06.2012, 20:47 4
MrGluck, объяснишь? Я сам-то начинающий просто.
0
42 / 42 / 8
Регистрация: 24.11.2009
Сообщений: 165
18.06.2012, 20:52 5
ну функция main, должна возвращать какое-то значение, а у вас тип void, т.е. не возвращает значение, что запрещено стандартом. Некоторые компиляторы не будут ругаться на void main, а некоторые будут. Поэтому чтобы ваша программа соответствовала стандарту, сделайте int main. Если ничего не путаю, return не обязательно писать.
2
51 / 51 / 5
Регистрация: 02.01.2011
Сообщений: 503
18.06.2012, 20:56 6
Вот оно что. Ну так если мой компилятор не ругается, значит я могу использовать void main? Или это "не по закону программерскому"?
0
Форумчанин
Эксперт CЭксперт С++
8164 / 5012 / 1436
Регистрация: 29.11.2010
Сообщений: 13,455
18.06.2012, 21:03 7
Цитата Сообщение от bLesk Посмотреть сообщение
Если ничего не путаю, return не обязательно писать.
Да, если ничего не указать, то main вернет 0. Хотя лично мое мнение таково: написал функцию - верни результат
0
Эксперт С++
516 / 420 / 92
Регистрация: 23.09.2010
Сообщений: 1,165
18.06.2012, 21:44 8
Цитата Сообщение от tomaticus Посмотреть сообщение
Вот оно что. Ну так если мой компилятор не ругается, значит я могу использовать void main? Или это "не по закону программерскому"?
Не очень хорошо привязываться к определенному компилятору. Например, захотите вы вдруг скомпилить на нормальном компиляторе и придется переписывать, вместо того, чтобы изначально правильно написать.
C++
1
2
3
#include<iostream.h>
#include<conio.h>
#include<stdlib.h>
эта запись устарела
Теперь:
C++
1
2
#include<iostream>
#include<cstdlib>
conio в стандарте отсутсвует.
Вместо gotoxy(); - надо писать свои врапперы под определенную ОС
Вместо getch(); - getchar() или system("pause") если под Винду.
Вместо clrscr(); - system("cls") если под винду, если под linux - то управляющие символы.
Вместо randomize(); - srand((unsigned)time())
Вместо random(); - rand() % n
Моя оценка - если привязываться к стандарту то 2, если не привязываться - то ничего не скажу, потому что мало кода и код простой. Также не очень хороший стиль программирования. Непонятные переносы строк, странная табуляция, часто пропущены пробелы между токенами и проч.
1
51 / 51 / 5
Регистрация: 02.01.2011
Сообщений: 503
18.06.2012, 22:26 9
gooseim, Спасибо.
0
Форумчанин
Эксперт CЭксперт С++
8164 / 5012 / 1436
Регистрация: 29.11.2010
Сообщений: 13,455
18.06.2012, 22:46 10
Вместо clrscr(); - system("cls") если под винду, если под linux - то управляющие символы.
Linux - system("clear");
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
18.06.2012, 22:46

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

у меня ошибка, я как нуб непонимаю в чем
Пожалуйста помогите, у меня C++ Builder 6


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

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

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