Форум программистов, компьютерный форум, киберфорум
Наши страницы

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

Войти
Регистрация
Восстановить пароль
 
Алекс090394
0 / 0 / 0
Регистрация: 25.12.2012
Сообщений: 35
#1

как сделать чтобы программа не переполняла буфер - C++

14.03.2013, 15:50. Просмотров 291. Ответов 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
#include "stdafx.h"
#include <iostream>
using namespace std;
void sort_pryamoi_vybor(int n) {int mas[20];
  int srav=0, perest=0;
  for (int i=0; i<n-1; i++) {
    int j_max=i;
    for (int j=i+1; j<n; j++) {
      srav++;
      if (mas[j] > mas[j_max]) {
        j_max = j;
      }
    }
    perest++;
    int t = mas[i];
    mas[i] = mas[j_max];
    mas[j_max] = t;
  }
  
      cout << srav << " " << perest << endl;
  }
 
void zapolit(int n) {int mas[20];
  for (int i=0; i<n; i++) {
    mas[i] = rand()%100;
  }
}
 
int main(int n) {
  for (int i=20; i<=800; i+=20) {
    n=i;
    zapolit(n);
    sort_pryamoi_vybor(n);
  }
  system("pause");
  return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.03.2013, 15:50
Здравствуйте! Я подобрал для вас темы с ответами на вопрос как сделать чтобы программа не переполняла буфер (C++):

Как сделать чтобы программа не закрывалась. - C++
как сделать чтобы программа не закрывалась написон с dev c++ В смысле чтоб программа не можно было вообще закрыт после последнего...

Как сделать, чтобы программа быстрее работала? - C++
Задача такая Первая строка содержит количество банкнот N (1 ≤ N ≤ 500 000). В следующих N строках даны достоинства K этих банкнот (0 ≤ K...

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

Как сделать, так чтобы программа выводила наименование цвета, как здесь? - C++
http://colors.aeio.ru/color/fffffe Я создал базу из 1002 цветов но это вообще не то. Я подгрузил изображение в 2тыс пикселей. И программа...

Движение объекта по XY. Как сделать чтобы программа считала FaceUnit как градусы - C++
Не пойму как сделать чтобы программа считала FaceUnit как градусы. При выводе на экран выдаёт подозрительные результаты. float...

Как сделать чтобы программа отображала входные параметры самостоятельно - C++
Всем привет! Нужно написать программу. В центре будет изображена 3д модель. а по бокам будет показаны входные данные, на которые...

2
-=ЮрА=-
Заблокирован
Автор FAQ
14.03.2013, 16:02 #2
Алекс090394, твой код напрочь нерабоатоспособный о каком переполнении вообще может идти речь?
Ты вообще понимаешь что массивы красным совсем никак не были связаны?Фактически втой код, будь он написан верно всё равно бы сортировал мусор оперативки!
Цитата Сообщение от Алекс090394 Посмотреть сообщение
oid sort_pryamoi_vybor(int n) {int mas[20];
Цитата Сообщение от Алекс090394 Посмотреть сообщение
void zapolit(int n) {int mas[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
#include <iostream>
using namespace std;
 
void zapolnit(int * mas, int n);
void sort_pryamoi_vybor(int * mas, int n) ;
 
int main() 
{
    int * mas  = 0;
    for (int n = 20; n <= 800; n += 20) 
    {
        mas = new int[n];
        zapolnit(mas, n);
        sort_pryamoi_vybor(mas, n);
        delete [] mas;
    }
    getchar();
    return 0;
}
 
void sort_pryamoi_vybor(int * mas, int n) 
{
    int i, j;
    int srav=0, perest=0;
    for (i=0; i < n; i++) 
    {
        int j_max=i;
        for (j = i + 1; j < n; j++) 
        {
            srav++;
            if (mas[j] > mas[j_max]) 
                j_max = j;
        }
        perest++;
        int t = mas[i];
        mas[i] = mas[j_max];
        mas[j_max] = t;
    }
    cout << srav << " " << perest << endl;
}
 
void zapolnit(int * mas, int n) 
{
    for (int i=0; i<n; i++) 
        mas[i] = rand()%100;
}
1
Миниатюры
как сделать чтобы программа не переполняла буфер  
-=ЮрА=-
14.03.2013, 16:08     как сделать чтобы программа не переполняла буфер
  #3

Не по теме:

Проверка здесь http://liveworkspace.org/code/t7czr$2

1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.03.2013, 16:08
Привет! Вот еще темы с ответами:

Как сделать так чтобы простейшая программа запускалась сначало - C++
Предположим есть самая простая программа: #include &lt;iostream&gt; using namespace std; #include &lt;cmath&gt; int main() { double c; ...

Как сделать так чтобы программа открывала txt файл? - C++
Допустим,я создал тхт файл и нужно его открыть с помощью запуска программы,как так сделать?

Как сделать чтобы программа закрывалась, когда условие выполнено? - C++
// Это програма выщитывает корни дискриминанта. 27.08.2013, 16.05 #include &lt;iostream&gt; using namespace std; int main() { ...

Как сделать, чтобы программа не закрылась сразу после выполнения? - C++
помогите сделать так чтобы программа не закрылась сразу после выполнения #include &lt;iostream&gt; #include &lt;cstddef&gt; #include &lt;ctime&gt; ...


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

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

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