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

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

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

Ошибки в программе - C++

12.12.2011, 06:16. Просмотров 548. Ответов 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
33
34
35
 // laba3.cpp: определяет точку входа для консольного приложения.
//
 
#include "stdafx.h"// указывает на подключение к проекту файла “stdafx.h”
#include "iostream"//“iostream”-файл, содержащий описание эл-ов станд. библ-ки
#include "conio.h"//“conio.h”-файл,нужен для работы с консольным приложением getch()
using namespace std;
 
int _tmain()// функция с именем tmain
{float x, b, a, c, Y,z; // объявление переменных
char flag = 'y'; // объявление переменных
do {cout << "Please enter x, b, a, z, c";// начало цикла do while, приглашение к выводу  
cin >> x >> b >> a >> c >> z; // ввод x,b,a,c
if ( min(a, b, c) / (a==0) ==0 || min(a, b, c) / (z==0) ==0) cout << "Znamenatel raven nulu!" << endl<< "----------------------------------\n" ;// проверка одного из знаменателей на равенство нулю, если условие выполняется то выводиться сообщение "Znamenatel raven nulu!"
else{
if ((a*z) > 5) Y = min(a,b,c)+max(a,b) ;//вычисление 1 значения ф-ии
else if ((a*z) < 5) Y = min(a,b,c)/ a; //вычисление 2 значения ф-ии
else ((a*z)==5) Y = min(a,b,c)/ z; //вычисление 3 значения ф-ии
cout << "You enter: x = " << x << "; b = " << b << "; a = " << a << "; c = " << c << ";" << z << ";" << endl;//вывод исходных данных
if((int(a) || int(b) && int(b) || int(c)) == 0) //проверка на равенство нулю целых значений a и b или b и с
{   
    cout << " Y = " << int(Y) << endl;// вывод значения F в целочисленном типе если предыдущее условие выполняется
    cout << "Continue\? Y/N" << endl;//вывод предложения продолжить
}
else {cout << " Y = " << double(Y) << endl;// вывод значения F в действительном типе если предыдущее условие невыполняется
 
    cout << "Continue\? Y/N" << endl; //вывод предложения продолжить
}
cin >> flag;//ввод нового значения flag
}
}
while ( flag == 'y');//проверка продолжения цикла
_getch();   
return 0;
}
Как исправить ошибки?
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.12.2011, 06:16
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Ошибки в программе (C++):

Ошибки в программе - C++
rational.h #define _Rational_h_ #include &lt;iostream&gt; using namespace std; int nod(int p, int q) { if (p &lt; 0) p = -p; ...

Ошибки в программе - C++
Вот сама программа. Дан целочисленный массив В. Заменить все его элементы их квадратами. #include &lt;iostream&gt; #include &lt;ctime&gt; ...

Ошибки в программе - C++
Подскажите пожалуйста почему у меня в коде при сложении сантиметров если их сумма превышает 100 то не добавляется 1 метр. ...

Ошибки в программе - C++
Мне необходимо реализовать алгоритм сортировки каскадным слиянием со специальным распределением. Я написал программу: #include...

Ошибки в программе - C++
Не хочет запускатся #include &lt;cstdlib&gt; #include &lt;iostream&gt; #include &lt;string.h&gt; using namespace std; int main(int argc, char...

Ошибки в программе - C++
#include&lt;iostream&gt; #include&lt;conio.h&gt; #include&lt;string&gt; using namespace std; int main() { int arr; for (int(i) = 0; i &lt;...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
greeezz
272 / 165 / 4
Регистрация: 10.07.2011
Сообщений: 441
12.12.2011, 07:31 #2
Цитата Сообщение от MK_9 Посмотреть сообщение
Как исправить ошибки?
Вариант первый. (он же правильный)
1. Напишите условие задаи.
2. Определите проблему
3. Нарисуйте организационную диограмму следуя минимальной необходимой логике программы.
4. Напишите общий псевдокод.
5. Напишите программу на нужном вам языке программирования на основе пунктов 3 и 4.
6. Протестируйте программу.

Вариант второй. (он же не очень правильный)
1. напигишите условие задачи в этой теме.
2. подождите пока кто-нибудь решит.

Я это написал потому что вижу что вы хотите что-то сделать сами. Так вот если будете следовать первому варианту то у вас будет гораздо меньше ошбок и ваш код будет чище и понятнее. И самое главное тем кто захотят вам помочь исправить ошибки будет проще понять вашу программу.

p.s. это что-то ну очень страшное
C++
1
if ( min(a, b, c) / (a==0) ==0 || min(a, b, c) / (z==0) ==0)
и это
C++
1
if((int(a) || int(b) && int(b) || int(c)) == 0)
и это
C++
1
else ((a*z)==5)
....
0
MK_9
0 / 0 / 0
Регистрация: 16.11.2011
Сообщений: 11
12.12.2011, 07:34  [ТС] #3
Вот задание:
Организовать вычисления в диалоге по схеме:
1. Вывод приглашения к диалогу.
2. Ввод исходных данных.
3. Расчет и вывод результатов с проверкой деления на 0.
4. Запрос на повторение результатов. Если не повторять, то конец работы: если повторять, то переход к п.1.

Вычислить
{-это общая скобка
y={min(a,b,c)+max(a,b), az>5
min(a,b,c)/a,az<5
min(a,b,c)/z,az=5


Переменная Y должна принимать действительное значение, если выражение (Ац Или Вц) И (Вц Или Сц) не равно нулю, и целое значение в противном случае. Через Ац, Вц и Сц обозначе¬ны целые части значений a, b, c. Значения a, b, c, z ввести с клавиатуры.
0
greeezz
272 / 165 / 4
Регистрация: 10.07.2011
Сообщений: 441
12.12.2011, 07:46 #4
Цитата Сообщение от MK_9 Посмотреть сообщение
Вычислить
{-это общая скобка
y={min(a,b,c)+max(a,b), az>5
min(a,b,c)/a,az<5
min(a,b,c)/z,az=5
Вы можете это расшифровать, пожалуйста?
0
MK_9
0 / 0 / 0
Регистрация: 16.11.2011
Сообщений: 11
12.12.2011, 07:54  [ТС] #5
Цитата Сообщение от greeezz Посмотреть сообщение
Вы можете это расшифровать, пожалуйста?
Вот...
0
Миниатюры
Ошибки в программе  
greeezz
272 / 165 / 4
Регистрация: 10.07.2011
Сообщений: 441
12.12.2011, 08:21 #6
сделал все кроме
Переменная Y должна принимать действительное значение, если выражение (Ац Или Вц) И (Вц Или Сц) не равно нулю, и целое значение в противном случае.
Это условие (Ац Или Вц) И (Вц Или Сц) мне кажется нелогичным.

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
57
58
59
60
61
#include <iostream>
using std::cout;
using std::endl;
using std::cin;
 
float min(float a, float b, float c) {
    if (a < b) {
        if (a < c) {
            return a;
        }
    } else if (b < c) {
        return b;
    }
    return c;
}
float max(float a, float b) {
    return a > b ? a : b;
}
 
int main() {
 
    float a, b, c, z, y;
    int userChoice;
    bool exit = false;
 
    while (!exit) {
        cout << "Please enter a ::\n>";
        cin >> a;
        cout << "Please enter b ::\n>";
        cin >> b;
        cout << "Please enter c ::\n>";
        cin >> c;
        cout << "Please enter z ::\n>";
        cin >> z;
        if (a == 0 || z == 0) {
            cout << "Values a and z can not be 0\n1 :: Try again 2:: Exit";
            cin >> userChoice;
            if (userChoice == 2) {
                exit = true;
            }
        } else {
            if ((a * z) > 5) {
                y = (min(a, b, c) + max(a, b));
            } else if ((a * z) < 5) {
                y = (min(a, b, c) / a);
            } else if ((a * z) == 5) {
                y = (min(a, b, c) / z);
            }
            cout << "Y = " << y << endl;
            cout << "1 :: Exit\n2 :: Try again\n>";
            cin >> userChoice;
            if (userChoice == 1) {
                exit = true;
            }
            cin.clear();
            cin.ignore(1000, '\n');
                        cin.get();
        }
    }
    return 0;
}
если вы в вижуал студио проект собираете то добавьте в самое начало :
C++
1
#include "stdafx.h"
0
MK_9
0 / 0 / 0
Регистрация: 16.11.2011
Сообщений: 11
12.12.2011, 08:51  [ТС] #7
Цитата Сообщение от greeezz Посмотреть сообщение
сделал все кроме

Это условие (Ац Или Вц) И (Вц Или Сц) мне кажется нелогичным.

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
57
58
59
60
61
#include <iostream>
using std::cout;
using std::endl;
using std::cin;
 
float min(float a, float b, float c) {
    if (a < b) {
        if (a < c) {
            return a;
        }
    } else if (b < c) {
        return b;
    }
    return c;
}
float max(float a, float b) {
    return a > b ? a : b;
}
 
int main() {
 
    float a, b, c, z, y;
    int userChoice;
    bool exit = false;
 
    while (!exit) {
        cout << "Please enter a ::\n>";
        cin >> a;
        cout << "Please enter b ::\n>";
        cin >> b;
        cout << "Please enter c ::\n>";
        cin >> c;
        cout << "Please enter z ::\n>";
        cin >> z;
        if (a == 0 || z == 0) {
            cout << "Values a and z can not be 0\n1 :: Try again 2:: Exit";
            cin >> userChoice;
            if (userChoice == 2) {
                exit = true;
            }
        } else {
            if ((a * z) > 5) {
                y = (min(a, b, c) + max(a, b));
            } else if ((a * z) < 5) {
                y = (min(a, b, c) / a);
            } else if ((a * z) == 5) {
                y = (min(a, b, c) / z);
            }
            cout << "Y = " << y << endl;
            cout << "1 :: Exit\n2 :: Try again\n>";
            cin >> userChoice;
            if (userChoice == 1) {
                exit = true;
            }
            cin.clear();
            cin.ignore(1000, '\n');
                        cin.get();
        }
    }
    return 0;
}
если вы в вижуал студио проект собираете то добавьте в самое начало :
C++
1
#include "stdafx.h"
Большое спасибо) теперь понял)
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.12.2011, 08:51
Привет! Вот еще темы с ответами:

ошибки в программе - C++
include &quot;stdafx.h&quot; #include &lt;cstdlib&gt; int _tmain(int argc, _TCHAR* argv) { int i,n,j,temp; char ch,a; a='a'; ...

Ошибки в программе - C++
Здравствуйте, уважаемые программисты. Помогите, пожалуйста, исправить ошибки в программе: #include &lt;stdlib.h&gt; #include &lt;stdio.h&gt; ...

Ошибки в программе - C++
#include &lt;iostream&gt; using namespace std; struct employe { int number; float money; }; int main() { ...

Ошибки в программе - C++
Здравствуйте! Помогите, пожалуйста, разобраться с ошибками) #include &lt;iostream.h&gt; #include &lt;conio.h&gt; #include &lt;math.h&gt; class...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
12.12.2011, 08:51
Ответ Создать тему
Опции темы

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