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

Исправить ошибку в коде - C++

Восстановить пароль Регистрация
 
U4_nik
0 / 0 / 0
Регистрация: 12.05.2011
Сообщений: 48
01.10.2011, 01:38     Исправить ошибку в коде #1
Задача простейшая, но вот реализовать не получается правильно, вот условие :

Написать программу вычисления стоимости покупки с учетом скидки. Скидка в 3% предоставляется, если сумма покупки больше 500 руб, в 5% — если сумма больше 1000 руб. Ниже приведен рекомендуемый вид экрана во время выполнения программы (данные, введенные пользователем, выделены полужирным шрифтом).

Вычисление стоимости покупки с учетом скидки.
Введите сумму покупки и нажмите <Enter>
-> 640
Вам предоставляется скидка 3%
Сумма с учетом скидки: 620.80 руб.

вот мой код:

Код
#include <math.h>
#include <stdio.h>
void main () {
float sum;
printf("Vvedite summu pokupki i najmite <ENTER> ->: \n");
scanf("%f",&sum); {
if (sum>500)  printf("Vam predostavlyetsa skidka v 3% :\n", sum=sum-(sum*3/100))  ; else  printf("Skidka ne predostavlyetsa :\n") ;   }
if (sum>1000)  printf("Vam predostavlyetsa skidka v 5% :\n", sum=sum-(sum*5/100))  ;
printf("summa s u4etom skidki=%f rub",sum);
scanf("\n");
}
проблема в операторе if, где то я напутал именно с ним, потому что если ввожу число большее чем 500, то прога работает нормально, а если больше 1000, то она сначала считает 3% , а потом ещё и 5% , хотя должна считать только 5%...помогите плз...
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
01.10.2011, 01:38     Исправить ошибку в коде
Посмотрите здесь:

Исправить ошибку в коде C++
Исправить ошибку в коде с++ C++
C++ исправить ошибку в коде
C++ Исправить ошибку в коде.
исправить ошибку в коде C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Paporotnik
383 / 227 / 7
Регистрация: 06.07.2011
Сообщений: 512
01.10.2011, 01:40     Исправить ошибку в коде #2
ну, тебе не кажется, что все, что больше 1000, явно больше 500?)
Chelioss
179 / 179 / 4
Регистрация: 08.01.2011
Сообщений: 1,131
01.10.2011, 01:56     Исправить ошибку в коде #3
Вместо
C++
1
if (sum>500)
Напиши
C++
1
if (sum>500 && sum <= 1000)
kazak
 Аватар для kazak
3029 / 2350 / 155
Регистрация: 11.03.2009
Сообщений: 5,401
01.10.2011, 04:02     Исправить ошибку в коде #4
C++
1
2
3
if (sum > 1000){}
else if (sum > 500){}
else{}
Yandex
Объявления
01.10.2011, 04:02     Исправить ошибку в коде
Ответ Создать тему
Опции темы

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