Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.78/9: Рейтинг темы: голосов - 9, средняя оценка - 4.78
0 / 0 / 0
Регистрация: 10.01.2012
Сообщений: 22
1

Организация циклов. Условные и безусловные переходы.

20.01.2012, 14:37. Просмотров 1826. Ответов 10
Метки нет (Все метки)

Помогите пожалуйста сделать
0
Миниатюры
Организация циклов. Условные и безусловные переходы.  
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
20.01.2012, 14:37
Ответы с готовыми решениями:

Организация циклов. Условные и безусловные переходы.
https://www.cyberforum.ru/attachment.php?attachmentid=121789&d=1327055835 Помогите пожалуйста...

Посоветуйте материал для изучения: БНФ, Регистр IP, Безусловные и условные переходы
Посоветуйте материал для начального изучения следующих тем: Конструкции управления. Линейная...

Организация циклов. Условные и безусловные переходы
Здраствуйте! Помогите пожалуйста сделать работы на NASM: Часть 1. http://*************/s/1vcwm ...

Условные и безусловные переходы. Неправильный вывод на экран.
Решена небольшая задача, но на экран выводиться не правильный результат. И я пока немогу найти...

10
Полярный
475 / 447 / 158
Регистрация: 11.09.2011
Сообщений: 1,156
20.01.2012, 14:42 2
1)
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <iostream>
 
using namespace std;
 
main ()
{
double a, b, c, x;
//ввод
if (x < 0 && b != 0)
   cout << a * x * x + b;
else if (x > 0 && b == 0)
   cout << (x-a)/(x-c);
else
   cout << (x*10)/(c-4);
//system(PAUSE > NULL);
}
0
30 / 30 / 6
Регистрация: 15.12.2011
Сообщений: 108
20.01.2012, 16:24 3
Цитата Сообщение от dimcoder Посмотреть сообщение
#include <iostream>
using namespace std;
main ()
{
double a, b, c, x;
//ввод
if (x < 0 && b != 0)
* *cout << a * x * x + b;
else if (x > 0 && b == 0)
* *cout << (x-a)/(x-c);
else
* *cout << (x*10)/(c-4);
//system(PAUSE > NULL);
}
если позволите, то маленькое поправление, ибо double числа нельзя сравнивать на == и !=.
это нужно делать с использованием точности:
C++
1
2
3
4
5
const double eps = 0.00000001;
double a;
 
if(fabs(a) < eps)// проверка на ноль
if(fabs(a) > eps)// проверка на != 0
0
Полярный
475 / 447 / 158
Регистрация: 11.09.2011
Сообщений: 1,156
20.01.2012, 16:44 4
Цитата Сообщение от Melkor Посмотреть сообщение
double числа нельзя сравнивать на == и !=
Почему? Проверка на равенство\неравенство на 0:
C++
1
2
3
4
5
double a = 0.0000000001;
if (a == 0)
   cout << "Equal" << endl;
else
   cout << "Not equal" << endl;
Вывод "Not equal"
Работает. Прошу привести пример нерабочей программы на сравнение.

double и float - не стоит сравнивать.
0
30 / 30 / 6
Регистрация: 15.12.2011
Сообщений: 108
20.01.2012, 16:54 5
Цитата Сообщение от dimcoder Посмотреть сообщение
Работает. Прошу привести пример нерабочей программы на сравнение.
вот пожалуйста несколько ссылочек:
http://forum.ixbt.com/topic.cgi?id=26:40010
http://forum.shelek.ru/index.php/topic,6441.0.html
0
Полярный
475 / 447 / 158
Регистрация: 11.09.2011
Сообщений: 1,156
20.01.2012, 17:21 6
Да согласен, неточность вполне возможна и предложенный вариант, с точностью, подходит для решения. Но все же где вы можете применить данный способ в моей программе? Сравнения 2 даблов (которые кстати вводятся) не происходит, происходит сравнивание с константами.
0
30 / 30 / 6
Регистрация: 15.12.2011
Сообщений: 108
20.01.2012, 17:33 7
если есть гарантия что вы введете 1.0 и не получите в результате 0.99999999999 , то мой способ избыточен, но на практике луче не сравнивать даблы на == или != , потом очень тяжело определить где неработает программа. в этой маленькой проге легко найти где неверные входные данные, а представьте что в программе тысячи строк кода... так же легко тогда будет найти где потерялась 1 трилионная часть числа, которая привела к неправильному выполнению условия ?
1
385 / 229 / 12
Регистрация: 06.07.2011
Сообщений: 512
20.01.2012, 17:35 8
То, что они вводятся, не гарантирует, что они хранятся в том виде, в котором ты предполагаешь. И все типы с плавающей точкой (в том представлении, что обычно используется в компьютере) можно сравнивать с чем-то на равенство/неравенство только с какой-то точностью. И не важно с чем сравнивать.
1
221 / 134 / 19
Регистрация: 06.11.2010
Сообщений: 234
20.01.2012, 18:20 9
2)
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
#include <iostream>
 
int main()
{
    double S, D;
    S = D = 16.0;
    for ( int day = 2; day <= 10; ++day )
    {
        D += 0.15 * D;
        S += D;
    }
    std::cout << S << std::endl;
}
0
Заблокирован
Автор FAQ
20.01.2012, 23:23 10
Цитата Сообщение от julian3045 Посмотреть сообщение
Помогите пожалуйста сделать
Миниатюры
Вот просто на плюсах
Задание 1
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
#include <iostream>
using namespace std;
 
int main()
{
    double a,b,c,x,f;
    while(true)//Да бесконечный цикл, 
               //для выхода из приложения просто закрываем окно консоли
               //зачем так построил - вычислять можно сколь угодно долго
               //для сколь угодно разных вводимых значений
               //а вводить к примеру _getch с целью вопроса - продолжить или нет
               //считаю просто бессмысленным для данного алгоритма
    {
        cout<<"Enter a : ";cin>>a;
        cout<<"Enter b : ";cin>>b;
        cout<<"Enter c : ";cin>>c;
        cout<<"Enter x : ";cin>>x;
 
        f = a*x*x + b;//x < 0 && b != 0
        //a*x*x + b всегда существует, дефалтим именно его
        if(b == 0)
        if(x < 0)
            f = 10*x/(c - 4);//x < 0 && b == 0 - вот и остальные случаи
        else
            f = (x - a)/(x - c);//0 < x && b == 0
        cout<<"f = "<<f<<endl;
    }
    return 0;
}
0
Миниатюры
Организация циклов. Условные и безусловные переходы.  
Заблокирован
Автор FAQ
20.01.2012, 23:31 11
Задача 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
#include <iostream>
#include <cstdlib>
using namespace std;
 
int main()
{
    int nDays;
    double len, percent, distance = 0;
    cout<<"Enter distance of the first day in KM: ";
    cin>>len;
    cout<<"Enter percent of increase : ";
    cin>>percent;
    cout<<"Enter number of Days : ";
    cin>>nDays;
    for(int i = 1; i <= nDays; i++)
    {
        distance += len;
        len *= (1 + percent/100.0);
    }
    cout<<"Total distance in KM : "<<distance<<endl;
    system("pause");
    return 0;
}
0
Миниатюры
Организация циклов. Условные и безусловные переходы.   Организация циклов. Условные и безусловные переходы.  
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
20.01.2012, 23:31

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Найти сумму четных отрицательных элементов массива, имеющих нечетные индексы (условные, безусловные переходы)
Выполнить используя команды сравнения, условного и безусловного переходов: В заданной конечной...

Безусловные переходы
Ещё с школьных годов, когда на паскале програмил, вызубрил что использование безусловных преходов...

Достаточные условные и безусловные условия экстремума функции нескольких переменных
Подскажите, пожалуйста, в чём разница между условными и безусловными условиями.

Условные переходы
Подскажите кто-нибудь почему не срабытывает взаимодействие операторов в условии,срабатывает только...


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

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

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