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

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

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

При b=1 выдает ошибку - C++

02.10.2013, 17:13. Просмотров 409. Ответов 13
Метки нет (Все метки)

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
# include <iostream>
 # include <math.h>
 using namespace std;
 double Func( double s, double b);
 void main ()
 {
 double c=0;
  try
  {
  c=Func(4, 5);
  cout<<"Func "<<c;
  }
 catch(int b)
 {
 if(b==1)
 cout<<"\n sorry, it's the end";
 }
 cin.get();
 cin.get();
 }
 
 double Func( double s, double b)
 {
  double a;
  a=s/sqrt(b-1);
  return a;
 }
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.10.2013, 17:13
Здравствуйте! Я подобрал для вас темы с ответами на вопрос При b=1 выдает ошибку (C++):

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

Выдает ошибку при построении - C++
List.h #pragma once #include &lt;iostream&gt; using namespace std; struct A { int key; }; struct listStruct { A a;

Выдает ошибку при создании модуля - C++
у меня задача создать программу и 3 модуля с расширение .h я создал все три, первые 2 отлично работают, но когда я создал и подключил...

программа выдает ошибку при компиляции - C++
подскажите, пожалуста, в чем ошибка..При компиляции выскакивает ошибка undefined reference to 'Obrabotchik::SetListContinents()' ...

Почему выдает ошибку при вводе? - C++
Вот моя программа. Она перестала работать после того как я добавил функцию (invers). Эта функция должна инвертировать второй список. ...

Почему выдает такую ошибку? c++ при компиляции - C++
Вот код программы, нахождение наибольшего числа с 3 заданных #include &lt;iostream&gt; uisng namespace std; int max(int a,int b) ...

13
Croessmah
Ушел
Эксперт CЭксперт С++
13553 / 7704 / 872
Регистрация: 27.09.2012
Сообщений: 19,006
Записей в блоге: 3
Завершенные тесты: 1
02.10.2013, 17:19 #2
C++
1
a=s/sqrt(b-1);
при b == 1 будет деление на ноль
0
Suarez777
0 / 0 / 0
Регистрация: 24.03.2013
Сообщений: 66
02.10.2013, 17:21  [ТС] #3
как избежать?
0
Tulosba
:)
Эксперт С++
4396 / 3232 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
02.10.2013, 17:23 #4
а при b<1 - комплексное число

Добавлено через 37 секунд
Цитата Сообщение от Suarez777 Посмотреть сообщение
как избежать?
не делить на ноль добавьте проверку аргументов что ли
0
Croessmah
Ушел
Эксперт CЭксперт С++
13553 / 7704 / 872
Регистрация: 27.09.2012
Сообщений: 19,006
Записей в блоге: 3
Завершенные тесты: 1
02.10.2013, 17:24 #5
Цитата Сообщение от Suarez777 Посмотреть сообщение
как избежать?
проверять
C++
1
2
if( b < = 1 ) 
   throw <...> ;
0
Suarez777
0 / 0 / 0
Регистрация: 24.03.2013
Сообщений: 66
02.10.2013, 17:51  [ТС] #6
нужно исключение

Добавлено через 11 минут
Не работает все равно...


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
void main ()
 {
 double s, b, c=0;
  try
  {
      while(cin>>s>>b)
      {
  c=Func(s, b);
  cout<<"a= "<<c;
      }
  }
 catch(int b)
 {
 if(b <= 1) 
   throw "Error" ;
 }
 cin.get();
 cin.get();
 }
 
 double Func( double s, double b)
 {
  double a;
  a=s/sqrt(b-1);
  return a;
 }
0
Бендерродригез
Сгибальщик
42 / 42 / 3
Регистрация: 18.05.2013
Сообщений: 220
Завершенные тесты: 1
02.10.2013, 17:55 #7
Suarez777, ты исключение в блоке catch вызываешь.
0
Suarez777
0 / 0 / 0
Регистрация: 24.03.2013
Сообщений: 66
02.10.2013, 18:01  [ТС] #8
а где нужно вызывать его?

Добавлено через 2 минуты
Цитата Сообщение от Бендерродригез Посмотреть сообщение
Suarez777, ты исключение в блоке catch вызываешь.
а где нужно?
0
Croessmah
Ушел
Эксперт CЭксперт С++
13553 / 7704 / 872
Регистрация: 27.09.2012
Сообщений: 19,006
Записей в блоге: 3
Завершенные тесты: 1
02.10.2013, 18:09 #9
Цитата Сообщение от Suarez777 Посмотреть сообщение
а где нужно?
сначала лучше книжку почитать.
0
Suarez777
0 / 0 / 0
Регистрация: 24.03.2013
Сообщений: 66
02.10.2013, 18:12  [ТС] #10
Цитата Сообщение от Croessmah Посмотреть сообщение
сначала лучше книжку почитать.
вместо того чтоб острить, лучше бы помог
0
Kuzia domovenok
1948 / 1801 / 137
Регистрация: 25.03.2012
Сообщений: 6,238
Записей в блоге: 1
02.10.2013, 18:14 #11
Цитата Сообщение от Suarez777 Посмотреть сообщение
вместо того чтоб острить, лучше бы помог
Suarez777, А смысл помогать? Он с тобой на чужом языке будет говорить с тобой, если ты не знаешь этой темы. Сначала теория из книжки, потом разговор.
0
Бендерродригез
Сгибальщик
42 / 42 / 3
Регистрация: 18.05.2013
Сообщений: 220
Завершенные тесты: 1
02.10.2013, 18:16 #12
Цитата Сообщение от Suarez777 Посмотреть сообщение
вместо того чтоб острить, лучше бы помог
Во-первых, с какой стати?
Во-вторых, совет действительно дельный. Или, в крайнем случае, в гугл забить можно.
0
Shadow121
0 / 0 / 0
Регистрация: 22.05.2013
Сообщений: 42
02.10.2013, 19:08 #13
C++
1
2
3
4
5
6
7
 double Func( double s, double b)
 {
  double a;
  if( b > 1 ) 
  a=s/sqrt(b-1);
  return a;
 }
0
Croessmah
Ушел
Эксперт CЭксперт С++
13553 / 7704 / 872
Регистрация: 27.09.2012
Сообщений: 19,006
Записей в блоге: 3
Завершенные тесты: 1
02.10.2013, 19:14 #14
Shadow121, а если условие ложно, тогда чему будет равно a?
0
02.10.2013, 19:14
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
02.10.2013, 19:14
Привет! Вот еще темы с ответами:

Компилятор выдает ошибку при создании списка - C++
Доброго времени суток всем, не могу понять где ошибка создаю список list самым простым способом #include &lt;list&gt; #include...

Выдает ошибку при передаче массива в функцию - C++
Ругается на 59 строку: 2.cpp(59): error C2664: otn: невозможно преобразовать параметр 4 из &quot;double **&quot; в &quot;double&quot; Не существует...

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

Программа выдает ошибку при компиляции на dev c++ - C++
#include &lt;iostream&gt; #include &lt;ctime&gt; using namespace std; int main() { srand(time(NULL)); int *arr; int...


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

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

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