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

Циклы и операторы ветвления

12.12.2009, 21:02. Просмотров 1200. Ответов 2
Метки нет (Все метки)

Добрый вечер!Помогите с задачей!Ни как правильно её решить не смог...
По заданию Программа должна использовать цикл для запроса доходов и выдачи подлежащего к выплате налога.Цикл должен прерываться при вводе отрицательного или не числового значения.Налог считается по формуле:если человек заработал 38000р. то он должен заплатить налог 5000*0.0+10000*0.1+20000*0.15+3000* 0.2 или 4600 руб.
Заданная шкала налогооблажения:
первые 5000 р -налог 0%
следующ. 10000р - налог 10%
следующ. 20000р - налог 15%
свыше 35000 р - налог 20%

Я попытался решить,но при вводе значения болшего чем 38000 цикл не выполняется ни разу,при вводе меньших значений всё проходит не плохо.

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
#include <cstdlib>
#include <iostream>
#include <cctype>
 
using namespace std;
 
const int size = 7;
 
int main(int argc, char *argv[])
{
    double donation[size];
    int vvod;
    cout<<"Vvedite summu dlya nalogooblajenia\n";
    int i = 0;
    cin >> vvod;
    while (i < size && !isalpha(vvod)>0)
     {
         if(vvod>=5000 && vvod<10000)
          { donation[i] = vvod*0.0;
           cout<<"summa s nalogom: "<<donation[i]<<"\n";
          }
          else if (vvod>=10000 && vvod<20000)
                { donation[i] = vvod*0.1;
                  cout<<"summa s nalogom: "<<donation[i]<<"\n";
                }
          else if (vvod>=20000 && vvod<35000)
                 {  donation[i]=vvod*0.15;
                    cout<<"summa s nalogom: "<<donation[i]<<"\n";
                 }
          else if (vvod>=35000)
                 {     int razn=vvod-35000;
                        donation[i]=(5000*0.00)+(10000*0.1)+(20000*0.15)+(razn*0.20);
                   cout<<"summa s nalogom: "<<donation[i]<<"\n";
                 }
               else
                cout<<"vi vveli ne pravilniy simvol\n";
            cout<<"vvedite summu dlay nalogooblajenia:\n";
          cin >> vvod;
          i++;
        }
           cout<<"spasibo za uplatu nalogov.";
     system("PAUSE");
    return EXIT_SUCCESS;
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
12.12.2009, 21:02
Ответы с готовыми решениями:

Операторы присваивания, ввода- вывода. Операторы ветвления, выбора
Даны два ненулевых числа. Найти их сумму, разность, произведение, частное, остаток и целую часть от...

Операторы ветвления и операторы передачи управления
1. Вычислить значения функции F при вещественных a, b, c, x, вводимых с клавиатуры. 2....

Операторы ветвления
Подскажите как решить

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

2
0 / 0 / 1
Регистрация: 19.02.2014
Сообщений: 3
26.01.2015, 11:01 2
C++
1
int vvod;
щоб програма працювала потрібно змінити тип зміної vvod з int на double
0
Эксперт C
25063 / 15569 / 3329
Регистрация: 24.12.2010
Сообщений: 33,741
26.01.2015, 11:10 3
Цитата Сообщение от USHЁL Посмотреть сообщение
!isalpha(vvod)>0
очень странное условие...
Цитата Сообщение от maks1111 Посмотреть сообщение
потрібно змінити тип зміної vvod з int на double
Не по делу.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
26.01.2015, 11:10

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

Операторы ветвления С++
Дана точка на плоскости с координатами(x,y). Составить программу,которая выдает одно из сообщений...

операторы ветвления
Вводиться двузначное число. Определить, равен ли квадрат этого числа учетверенной сумме кубов его...

Операторы ветвления
Если целое число m делится на целое число n, то вывести на экран частное от деления, в противном...

Операторы ветвления if, else, и switch
В каком случае лучше использовать операторы ветвления if, else, а в каком switch?


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

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

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