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

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

Войти
Регистрация
Восстановить пароль
 
b0n4b
2 / 2 / 0
Регистрация: 16.11.2011
Сообщений: 100
#1

Прошу найти ошибку... - C++

21.11.2011, 22:32. Просмотров 684. Ответов 12
Метки нет (Все метки)

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
#include <conio.h> 
#include <stdio.h> 
 
int main(void) 
{ 
    const int n=5; 
    int a[n], i, j, b;
    printf ("Enter 5\n");
    for (j=0; j<n; j++)
    {
        scanf ("%d", &a[j]);
    }
    for (j=0; j<n-1; j++)
    {
        for (i=0; i<n-j; i++)
            if (a[i]>a[i+1])
            {
                b=a[i+1];
                a[i+1]=a[i];
                a[i]=b;
            }
    } 
    printf("%d", a[i]);
    getch();
    return 1;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.11.2011, 22:32     Прошу найти ошибку...
Посмотрите здесь:

прошу помочь найти ошибку - C++
задача должна заключатЬся в следующем: вводится предположим число 5, программа обрабатывает и выдает на строке 5 звездочек. #include...

прошу знатаков найти ошибку - C++
вот текст задания для понимания что я понаписал ЛАБОРАТОРНАЯ РАБОТА № 2 РЕАЛИЗАЦИЯ РЕГУЛЯРНЫХ ЦИКЛОВ СРЕДСТВАМИ ЯЗЫКА С++ Цель...

Задача по структурам, прошу найти ошибку - C++
Программа должна делать следующее - пользователь вводит список спортсменов, а программа выводит на экран данные о тех, которые занимаются...

Сортировка массива. Прошу найти ошибку - C++
Дано N цисло (1&lt;=N&lt;=100). Нужно отсортировать. Прошу найти ошибку #include &lt;iostream&gt; #include &lt;iomanip&gt; using namespace std; ...

прошу помощи, не могу найти ошибку - C++
#include&lt;iostream&gt; #include&lt;conio.h&gt; #include&lt;stdlib.h&gt; #include&lt;stdio.h&gt; #include&lt;time.h&gt; using namespace std; void...

Найти ошибку - C++
#include &lt;iostream&gt; #include &lt;vector&gt; #include &lt;string&gt; using namespace std; template &lt;class Type&gt; struct Vector3D { ...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
St1ck_man
9 / 9 / 1
Регистрация: 21.11.2011
Сообщений: 36
21.11.2011, 22:41     Прошу найти ошибку... #2
Что должна делать программа? Будьте добры поясните .)
b0n4b
2 / 2 / 0
Регистрация: 16.11.2011
Сообщений: 100
21.11.2011, 22:42  [ТС]     Прошу найти ошибку... #3
Метод сортировки. пузырьком
St1ck_man
9 / 9 / 1
Регистрация: 21.11.2011
Сообщений: 36
21.11.2011, 22:45     Прошу найти ошибку... #4
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
#include <conio.h> 
#include <stdio.h> 
 
int main(void) 
{ 
        const int n=5; 
        int a[n], i, j, b;
        printf ("Enter 5\n");
        for (j=0; j<n; j++)
        {
                scanf ("%d", &a[j]);
        }
        for (j=0; j<n-1; j++)
        {
                for (i=0; i<n-j; i++)
                        if (a[i]>a[i+1])
                        {
                                b=a[i+1];
                                a[i+1]=a[i];
                                a[i]=b;
                        }
        } 
        
        for(i=0;i<n;i++)   // добавил это :)
        printf("%d  ", a[i]);
        getch();
        return 1;
}
вроде работает )
b0n4b
2 / 2 / 0
Регистрация: 16.11.2011
Сообщений: 100
21.11.2011, 22:50  [ТС]     Прошу найти ошибку... #5
St1ck_man, она работает, но не совсем корректно)
Liebe
...
891 / 74 / 5
Регистрация: 21.02.2010
Сообщений: 2,196
Записей в блоге: 1
22.11.2011, 02:13     Прошу найти ошибку... #6
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 <conio.h> 
#include <stdio.h> 
 
int main(void) 
{ 
        const int n=5; 
        int a[n], i, j, b;
    bool flag=true; //новая переменная
 
        printf ("Enter 5\n");
        for (j=0; j<n; j++)
        {
                scanf ("%d", &a[j]);
        }
        //for (j=0; j<n-1; j++)
    while (flag) //поменяли тип цикла
        {
    flag=false; //если далее условие не выполнится, то значит массив упорядочен и цикл завершится
                for (i=0; i<n-1; i++) //поменяли на n-1
                        if (a[i]>a[i+1])
                        {
                                b=a[i+1];
                                a[i+1]=a[i];
                                a[i]=b;
                flag=true; //меняем значение
                        }
        } 
        for (i=0; i<n; i++)
        printf("%d", a[i]);
        getch();
        return 1;
}
accept
4820 / 3240 / 165
Регистрация: 10.12.2008
Сообщений: 10,682
22.11.2011, 12:05     Прошу найти ошибку... #7
Цитата Сообщение от liebe
C++
1
    return 1;
C++
1
    return 0;
getch() можно заменить на cin.get() (может даже двойной)
Liebe
...
891 / 74 / 5
Регистрация: 21.02.2010
Сообщений: 2,196
Записей в блоге: 1
22.11.2011, 16:50     Прошу найти ошибку... #8
accept, спасибо, буду знать.
а вообще я просто переделывала саму сортировку в коде, который был приведен. )))
accept
4820 / 3240 / 165
Регистрация: 10.12.2008
Сообщений: 10,682
22.11.2011, 16:52     Прошу найти ошибку... #9
ну да, в другом коде у тебя не было такого return
+B
Заблокирован
20.07.2012, 21:32     Прошу найти ошибку... #10
Цитата Сообщение от accept Посмотреть сообщение
return 0;
Цитата Сообщение от Liebe Посмотреть сообщение
accept, спасибо, буду знать.
Напиши void в возвращаемом типе функции main() и тебе вообще ни какие return(ы) не понадобятся
C++
1
2
void main() 
{
Liebe
...
891 / 74 / 5
Регистрация: 21.02.2010
Сообщений: 2,196
Записей в блоге: 1
20.07.2012, 21:46     Прошу найти ошибку... #11
Цитата Сообщение от +B Посмотреть сообщение
Напиши void в возвращаемом типе функции main() и тебе вообще ни какие return(ы) не понадобятся
Спасибо, конечно. Но насколько я уже успела прочитать где-то здесь на форуме, так делать нежелательно.
+B
Заблокирован
20.07.2012, 21:53     Прошу найти ошибку... #12
Цитата Сообщение от Liebe Посмотреть сообщение
так делать нежелательно.
Возможно. Я то к Шарпу привык. Иногда и в плюсах так делал. Разницы не заметил.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.07.2012, 04:46     Прошу найти ошибку...
Еще ссылки по теме:

Найти ошибку! - C++
Почему не хочет работать вот эта строка strcut(history,str); #include &lt;iostream&gt; #include &lt;conio.h&gt; #include &lt;string.h&gt; ...

найти ошибку - C++
выдает ошибку #include&lt;iostream.h&gt; void main() {double k,x; cout&lt;&lt;&quot;Vvedite x&quot;; cin&gt;&gt;x; double kx,s; kx=x/1; ...

Найти ошибку - C++
Из данного текста выбрать и напечатать те символы, которые встречаются в нем ровно один раз ( в том порядке, как они встречаются в тексте) ...

найти ошибку - C++
4)Баллов: 1 Ошибка этапа выполнения (семантическая ошибка) Выберите по крайней мере один ответ: пропуск ; выход за границы...


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

Или воспользуйтесь поиском по форуму:
accept
4820 / 3240 / 165
Регистрация: 10.12.2008
Сообщений: 10,682
21.07.2012, 04:46     Прошу найти ошибку... #13
Цитата Сообщение от +B Посмотреть сообщение
Напиши void в возвращаемом типе функции main() и тебе вообще ни какие return(ы) не понадобятся
void main( неправильно по стандарту, но return действительно не обязателен (так как предполагается return 0 в C99 и C++)
но в C89 там будет случайное значение, которое в исполняющей среде чаще всего будет означать, что программа завершилась со сбоем
Yandex
Объявления
21.07.2012, 04:46     Прошу найти ошибку...
Ответ Создать тему
Опции темы

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