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

Отладка программы. - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 4.60
Tarasoff
0 / 0 / 0
Регистрация: 16.06.2010
Сообщений: 12
14.08.2010, 14:46     Отладка программы. #1
Для заданного а вычислить f(a), где f(x) задана графиком ( график во вложении) .
Вопрос: как сделать так, что бы после введения аргумента, программа не закрывалась и не давала свой ответ после повторного запуска?

Код:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
#include <iostream.h>
void main ()
  {
  float x,y;
cout<<"vvedite znachenie argumenta x";
cin>>x;
if (x<0) y= - x;
  if ( x >=0 && x<1)  y= x ;
  if ( x >= 1 && x<3) y= 1;
  if ( x>=3)                   y = -x + 4;
  cout<<” Dlya x: =<<x<<” y budet raven:=<<y<<endl;
  return;
  }
Миниатюры
Отладка программы.  
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.08.2010, 14:46     Отладка программы.
Посмотрите здесь:

Отладка программы. C++
C++ Отладка программы
C++ Отладка программы
Отладка программы C++
C++ Отладка программы в CodeBlocks
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
ForEveR
Модератор
Эксперт C++
 Аватар для ForEveR
7927 / 4709 / 318
Регистрация: 24.06.2010
Сообщений: 10,524
Завершенные тесты: 3
14.08.2010, 14:48     Отладка программы. #2
Tarasoff, перед return - system("pause") или getchar();
Или подключить #include <conio.h> и getch();
AK3RN
 Аватар для AK3RN
307 / 18 / 2
Регистрация: 01.05.2010
Сообщений: 250
14.08.2010, 15:00     Отладка программы. #3
Или использовать CodeBlocks, там задержка экрана не нужна вовсе, т.к. окно с результатом не исчезает.
ForEveR
Модератор
Эксперт C++
 Аватар для ForEveR
7927 / 4709 / 318
Регистрация: 24.06.2010
Сообщений: 10,524
Завершенные тесты: 3
14.08.2010, 15:03     Отладка программы. #4
AK3RN, Да как бэ в Visual Studio аналогично.
nikkka
Мат в 32 хода
 Аватар для nikkka
235 / 170 / 8
Регистрация: 10.09.2009
Сообщений: 1,096
14.08.2010, 15:09     Отладка программы. #5
http://www.cyberforum.ru/cpp-beginners/thread10807.html
fasked
Эксперт C++
 Аватар для fasked
4924 / 2504 / 180
Регистрация: 07.10.2009
Сообщений: 4,306
Записей в блоге: 1
14.08.2010, 21:43     Отладка программы. #6
Цитата Сообщение от AK3RN Посмотреть сообщение
Или использовать CodeBlocks, там задержка экрана не нужна вовсе, т.к. окно с результатом не исчезает.
а еще можно запускать все программы из командной строки
Александр Елис
3 / 3 / 1
Регистрация: 20.05.2010
Сообщений: 50
14.08.2010, 21:54     Отладка программы. #7
Если работаешь на винде, то проще всего перед командой выходом из функции main добавить
C++
1
system("PAUSE");
;
Следущий метод работает везде.
C++
1
2
3
#include <stdio.h> // вроде там функция getchar();
getchar();
getchar(); // эта функция считывает символ
Можно использовать
C++
1
2
#include <conio.h>
getch(); // отличается от getchar() тем, что введенный символ не показывается на экране
Однако, на *NIX системах [по крайней мере у меня в универе ] компилятор почему-то не видит conio...
Можно запустить приложение из командной строки:
пуск->выполнить->cmd
появляется консоль, вводишь cd путь_к_директории_,где_лежит_файл
далее ./имя_файла
Ну а можно поставить брекпоинт перед выходом из функции и запустить в режиме Debug.
Вообщем, можно продолжать до бесконечности, но, я думаю, этого вполне хватит.
AK3RN
 Аватар для AK3RN
307 / 18 / 2
Регистрация: 01.05.2010
Сообщений: 250
14.08.2010, 23:02     Отладка программы. #8
Цитата Сообщение от Александр Елис Посмотреть сообщение
можно продолжать до бесконечности

Не по теме:

Продолжайте

fasked
Эксперт C++
 Аватар для fasked
4924 / 2504 / 180
Регистрация: 07.10.2009
Сообщений: 4,306
Записей в блоге: 1
14.08.2010, 23:16     Отладка программы. #9
Цитата Сообщение от Александр Елис Посмотреть сообщение
Однако, на *NIX системах [по крайней мере у меня в универе ] компилятор почему-то не видит conio...
это очень странно, если учесть тот факт, что заголовок conio.h использовался в MS-DOS системах, его нет в стандартах, соответственно он никакого отношения не имеет к стандартной библиотеке Си.
easybudda
Модератор
Эксперт С++
 Аватар для easybudda
9371 / 5421 / 914
Регистрация: 25.07.2009
Сообщений: 10,423
15.08.2010, 03:33     Отладка программы. #10
Цитата Сообщение от Александр Елис Посмотреть сообщение
Однако, на *NIX системах [по крайней мере у меня в универе ] компилятор почему-то не видит conio...
Видимо потому, что его там нет. А getch() лежит в curses.h Только в *NIX как-то больше принято
Цитата Сообщение от fasked Посмотреть сообщение
запускать все программы из командной строки
nikkka
Мат в 32 хода
 Аватар для nikkka
235 / 170 / 8
Регистрация: 10.09.2009
Сообщений: 1,096
15.08.2010, 10:23     Отладка программы. #11
Цитата Сообщение от easybudda Посмотреть сообщение
запускать все программы из командной строки
а чем это хорошо?
fasked
Эксперт C++
 Аватар для fasked
4924 / 2504 / 180
Регистрация: 07.10.2009
Сообщений: 4,306
Записей в блоге: 1
15.08.2010, 10:33     Отладка программы. #12
Цитата Сообщение от nikkka Посмотреть сообщение
а чем это хорошо?
это старая добрая традиция
easybudda
Модератор
Эксперт С++
 Аватар для easybudda
9371 / 5421 / 914
Регистрация: 25.07.2009
Сообщений: 10,423
15.08.2010, 10:44     Отладка программы. #13
Цитата Сообщение от nikkka Посмотреть сообщение
а чем это хорошо?
- заморочки с залипанием перед выходом
+ возможность просто передавать параметры компилятору и программе

Добавлено через 29 секунд
Цитата Сообщение от fasked Посмотреть сообщение
это старая добрая традиция
ну и это тоже
CyberHunter
12 / 12 / 1
Регистрация: 03.08.2010
Сообщений: 61
15.08.2010, 10:49     Отладка программы. #14
Цитата Сообщение от fasked Посмотреть сообщение
conio.h использовался в MS-DOS системах
ф-я getch(); , насколько я помню, ещё описана в stdio.h или stdlib.h, поправьте меня, если не так.
вообще conio.h не включаю.
easybudda
Модератор
Эксперт С++
 Аватар для easybudda
9371 / 5421 / 914
Регистрация: 25.07.2009
Сообщений: 10,423
15.08.2010, 10:58     Отладка программы. #15
Цитата Сообщение от CyberHunter Посмотреть сообщение
ф-я getch(); , насколько я помню, ещё описана в stdio.h или stdlib.h, поправьте меня, если не так.
Поправляю - нет её ни в stdio.h ни в stdlib.h
Mr.X
Эксперт С++
 Аватар для Mr.X
2798 / 1574 / 246
Регистрация: 03.05.2010
Сообщений: 3,651
15.08.2010, 11:12     Отладка программы. #16
Цитата Сообщение от CyberHunter Посмотреть сообщение
ф-я getch(); , насколько я помню, ещё описана в stdio.h или stdlib.h, поправьте меня, если не так.
вообще conio.h не включаю.

Цитата Сообщение от easybudda Посмотреть сообщение
Поправляю - нет её ни в stdio.h ни в stdlib.h
Ну, поскольку она нестандартная, то наверно все зависит от реализации.
CyberHunter
12 / 12 / 1
Регистрация: 03.08.2010
Сообщений: 61
15.08.2010, 11:16     Отладка программы. #17
понятно, то есть она есть только в статических библиотеках?
Tarasoff
0 / 0 / 0
Регистрация: 16.06.2010
Сообщений: 12
15.08.2010, 18:32  [ТС]     Отладка программы. #18
А если и getch(), и getchar не работает?)
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.08.2010, 18:34     Отладка программы.
Еще ссылки по теме:

C++ Отладка программы
C++ Отладка программы
Отладка программы на С++ C++

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

Или воспользуйтесь поиском по форуму:
ForEveR
Модератор
Эксперт C++
 Аватар для ForEveR
7927 / 4709 / 318
Регистрация: 24.06.2010
Сообщений: 10,524
Завершенные тесты: 3
15.08.2010, 18:34     Отладка программы. #19
Tarasoff,
C++
1
system("pause"); getche();
Что-нибудь вообщем, что ждет ожидания клавиши. Можно даже
C++
1
scanf("%d", i);
для С++
C++
1
cin.get()
Yandex
Объявления
15.08.2010, 18:34     Отладка программы.
Ответ Создать тему
Опции темы

Текущее время: 07:56. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru