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

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

Восстановить пароль Регистрация
 
 
Mistikkx
1 / 1 / 0
Регистрация: 04.10.2013
Сообщений: 77
23.10.2013, 19:02     Ребят, как разобраться в составлении программы на Си. Прошу #1
Здравствуйте ребят!
Не могли бы вы мне объяснить или показать с чего конкретно начинать по одной задачи.
Как этот алгоритм построить, точнее блок-схему.
Дана задача :
При покупке товара на сумму от 200 до 500 руб. предоставляется скидка 3%, при покупке товара на сумму от 500 до 800 – скидка 5%, при покупке товара на сумму от 800 до 1000 руб. – скидка 7%, свыше 1000 руб. – скидка 10%. Покупатель приобрел 8 рулонов обоев по цене Х1 и две банки краски по цене Х2. Сколько он заплатил?

Не могли бы вы сказать, к какому источнику обратиться, чтобы решать подобного рода задачи?
Чтобы можно было на что-то опираться. Просто проблема в том, понимая или не понимая мне надо написать данный код на эту задачу. Но, все же, хотелось, чтобы хотя бы что-то понял. И да, что представляет с собой математическая модель данной задачи? Как ее записать? Надеюсь на вас, ибо осталась только последняя надежда.
Спасибо за любую помощь.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.10.2013, 19:02     Ребят, как разобраться в составлении программы на Си. Прошу
Посмотрите здесь:

C++ Прошу помочь в написании программы
прошу помочь в написании программы шифрования и архивации данных желательно на С++ C++
C++ Прошу пояснить код программы, C++
Ребята, . пожалуйста! Вот текстовые программы. Вообще в строках не соображаю, прошу о .! программы на С++ C++
C++ Ребят доработайте код программы (программа сортировки чисел методом Шелла)
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Рыжий Лис
Просто Лис
 Аватар для Рыжий Лис
209 / 164 / 44
Регистрация: 17.05.2012
Сообщений: 611
Записей в блоге: 4
23.10.2013, 19:14     Ребят, как разобраться в составлении программы на Си. Прошу #2
Как решить текущую задачу:
1) считаем сумму без скидки
сумма = 8*х1 + 2*х2
2) в зависимости от суммы выбираем размер скидки
если сумма меньше 200 - 0%
если сумма больше 200 и меньше 500 - 3%
если сумма больше 500 и меньше 800 - 5%
если сумма больше 800 и меньше 1000 - 7%
если сумма больше 1000 - 10%
3) и считаем сколько заплатит покупатель
= сумма * (1-проценты)

А теперь попробуй написать код
Stella
75 / 75 / 5
Регистрация: 26.02.2013
Сообщений: 224
23.10.2013, 19:17     Ребят, как разобраться в составлении программы на Си. Прошу #3
Mistikkx, тут if нужно использовать. Почитайте Лафоре, там есть про вложенные операторы выбора.
Алгоритм приблизительно такой:
1. ввести х1, х2.
2. посчитать суму покупки.
3. проверить через if сколько скидка.
4. посчитать суму - скидка.
Mistikkx
1 / 1 / 0
Регистрация: 04.10.2013
Сообщений: 77
23.10.2013, 19:30  [ТС]     Ребят, как разобраться в составлении программы на Си. Прошу #4
Цитата Сообщение от Stella Посмотреть сообщение
Mistikkx, тут if нужно использовать. Почитайте Лафоре, там есть про вложенные операторы выбора.
Алгоритм приблизительно такой:
1. ввести х1, х2.
2. посчитать суму покупки.
3. проверить через if сколько скидка.
4. посчитать суму - скидка.
Я сейчас постараюсь что-нибудь наколячить, сможете проверить?
Verbillion
9 / 9 / 0
Регистрация: 22.10.2013
Сообщений: 36
23.10.2013, 19:40     Ребят, как разобраться в составлении программы на Си. Прошу #5
Цитата Сообщение от Mistikkx Посмотреть сообщение
Я сейчас постараюсь что-нибудь наколячить, сможете проверить?
Конечно! Работайте, ждём результатов )
Mistikkx
1 / 1 / 0
Регистрация: 04.10.2013
Сообщений: 77
23.10.2013, 20:01  [ТС]     Ребят, как разобраться в составлении программы на Си. Прошу #6
Цитата Сообщение от Verbillion Посмотреть сообщение
Конечно! Работайте, ждём результатов )
Вот такое получилось(((

C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <stdio.h>
#include <windows.h>
{
int main(void) {
int x1,x2;
printf ("X1=");
scanf ("%d"&X1)
printf ("X2=");
scanf ("%d"&X2)
printf ("D=");
scanf ("%d"&D);
D=8*x1+2*x12;
if (summ = 8*x1 + 2*x2;
summ *= (summ<200)?1:(summ<500)?0.97:(summ<800)?0.95:(summ<1000)?0.93:0.9;);
}
return 0;)
}
Рыжий Лис
Просто Лис
 Аватар для Рыжий Лис
209 / 164 / 44
Регистрация: 17.05.2012
Сообщений: 611
Записей в блоге: 4
23.10.2013, 20:03     Ребят, как разобраться в составлении программы на Си. Прошу #7
Цитата Сообщение от Mistikkx Посмотреть сообщение
scanf ("%d"&X1)
Здесь будет ошибка компиляции. Имена переменных чувствительны к регистру.
C++
1
scanf("%d",&x1);
В конце каждой команды ставится точка с запятой
Mistikkx
1 / 1 / 0
Регистрация: 04.10.2013
Сообщений: 77
23.10.2013, 20:06  [ТС]     Ребят, как разобраться в составлении программы на Си. Прошу #8
Цитата Сообщение от Рыжий Лис Посмотреть сообщение
Здесь будет ошибка компиляции. Имена переменных чувствительны к регистру.
C++
1
scanf("%d",&x1);
В конце каждой команды ставится точка с запятой
Исправил, но все равно много ошибок.
Рыжий Лис
Просто Лис
 Аватар для Рыжий Лис
209 / 164 / 44
Регистрация: 17.05.2012
Сообщений: 611
Записей в блоге: 4
23.10.2013, 20:08     Ребят, как разобраться в составлении программы на Си. Прошу #9
переменная D не объявлена
C++
1
int D;
Добавлено через 2 минуты
C++
1
2
3
4
//если сумма меньше 200 - 0%
if (D<200){
  summ = D;
}
Mistikkx
1 / 1 / 0
Регистрация: 04.10.2013
Сообщений: 77
23.10.2013, 20:08  [ТС]     Ребят, как разобраться в составлении программы на Си. Прошу #10
Цитата Сообщение от Рыжий Лис Посмотреть сообщение
переменная D не объявлена
C++
1
int D;
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <stdio.h>
#include <windows.h>
{
int main(void) {
int x1,x2, D;
printf ("X1=");
scanf ("%d"&x1;
printf ("X2=");
scanf ("%d"&x2;
printf ("D=");
scanf ("%d"&D);
D=8*Гµ1+2*Гµ2;
if (summ = 8*x1 + 2*x2;
summ *= (summ<200)?1:(summ<500)?0.97:(summ<800)?0.95:(summ<1000)?0.93:0.9;);
}
{
return 0;)
}
Вот так?
alsav22
5282 / 4801 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
23.10.2013, 20:09     Ребят, как разобраться в составлении программы на Си. Прошу #11
Удалил.
Рыжий Лис
Просто Лис
 Аватар для Рыжий Лис
209 / 164 / 44
Регистрация: 17.05.2012
Сообщений: 611
Записей в блоге: 4
23.10.2013, 20:12     Ребят, как разобраться в составлении программы на Си. Прошу #12
сделайте несколько if ов. Один if - одно условие

Добавлено через 2 минуты
функция scanf принимает два параметра строку, например "%d" и ссылку на переменную. Параметры пишутся в скобках и разделяются запятыми.
C++
1
2
//пример. Читаем целое число в переменную x1
scanf("%d",&x1);
Mistikkx
1 / 1 / 0
Регистрация: 04.10.2013
Сообщений: 77
23.10.2013, 20:16  [ТС]     Ребят, как разобраться в составлении программы на Си. Прошу #13
Цитата Сообщение от Рыжий Лис Посмотреть сообщение
переменная D не объявлена
C++
1
int D;
Добавлено через 2 минуты
C++
1
2
3
4
//если сумма меньше 200 - 0%
if (D<200){
  summ = D;
}
Извините за мою тупость.
Просто Я пытаюсь понять, но у меня ничего не получается. Начали просто недавно, а в школе даже и не знал о существовании предмета информатика. Но код мне надо написать

Добавлено через 1 минуту
Цитата Сообщение от alsav22 Посмотреть сообщение
Удалил.
Почему сообщения на данный форум были удалены?
Рыжий Лис
Просто Лис
 Аватар для Рыжий Лис
209 / 164 / 44
Регистрация: 17.05.2012
Сообщений: 611
Записей в блоге: 4
23.10.2013, 20:19     Ребят, как разобраться в составлении программы на Си. Прошу #14
Цитата Сообщение от Mistikkx Посмотреть сообщение
Я пытаюсь понять, но у меня ничего не получается.
Нормально пока получается

Добавлено через 1 минуту

Не по теме:

Цитата Сообщение от Mistikkx Посмотреть сообщение
Почему сообщения на данный форум были удалены?
пользователь отредактировал свое сообщение



Добавлено через 36 секунд
Давай пока сделаем ввод данных

Добавлено через 50 секунд
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
#include <stdio.h>
#include <windows.h>
 
int main(void) {
int x1,x2, D;
printf ("X1=");
scanf ("%d"&x1;
printf ("X2=");
scanf ("%d"&x2;
printf ("D=");
scanf ("%d"&D);
return 0;
}
Скомпилируй это и исправь ошибки
Mistikkx
1 / 1 / 0
Регистрация: 04.10.2013
Сообщений: 77
23.10.2013, 20:22  [ТС]     Ребят, как разобраться в составлении программы на Си. Прошу #15
Цитата Сообщение от Рыжий Лис Посмотреть сообщение
Нормально пока получается

Добавлено через 1 минуту

Не по теме:


пользователь отредактировал свое сообщение



Добавлено через 36 секунд
Давай пока сделаем ввод данных

Добавлено через 50 секунд
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
#include <stdio.h>
#include <windows.h>
 
int main(void) {
int x1,x2, D;
printf ("X1=");
scanf ("%d"&x1;
printf ("X2=");
scanf ("%d"&x2;
printf ("D=");
scanf ("%d"&D);
return 0;
}
Скомпилируй это и исправь ошибки
Все, исправил.
Потом нам нужно посчитать сумму, да? То есть summ = 8*x1 + 2*x2;?

Добавлено через 1 минуту
[QUOTE=Mistikkx;5225827]Все, исправил.
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 <stdio.h>
#include <windows.h>
{
int main(void) {
int x1,x2, D;
printf ("X1=");
scanf ("%d"&x1;
printf ("X2=");
scanf ("%d"&x2;
printf ("D=");
scanf ("%d"&D);
D=8*o1+2*o2;
if (summ = 8*x1 + 2*x2;
if (D<200){
  summ = D;
}
if (D<500){
  summ = D;
}
if (D<800){
  summ = D;
}
if (D<1000){
  summ = D;
 
return 0;)
}
Рыжий Лис
Просто Лис
 Аватар для Рыжий Лис
209 / 164 / 44
Регистрация: 17.05.2012
Сообщений: 611
Записей в блоге: 4
23.10.2013, 20:24     Ребят, как разобраться в составлении программы на Си. Прошу #16
Цитата Сообщение от Mistikkx Посмотреть сообщение
То есть summ = 8*x1 + 2*x2;?
да.
Цитата Сообщение от Mistikkx Посмотреть сообщение
printf ("D=");
scanf ("%d"&D);
Что хранится в D? Если ничего, то удали
Mistikkx
1 / 1 / 0
Регистрация: 04.10.2013
Сообщений: 77
23.10.2013, 20:25  [ТС]     Ребят, как разобраться в составлении программы на Си. Прошу #17
Цитата Сообщение от Mistikkx Посмотреть сообщение
1
2
3
4
5
6
7
8
9
10
11
12
13
C
1
2
3
4
5
6
7
8
9
10
11
#include <stdio.h>
#include <windows.h>
int main(void) {
int x1,x2, D;
printf ("X1=");
scanf ("%d"&x1;
printf ("X2=");
scanf ("%d"&x2;
printf ("D=");
scanf ("%d"&D);
return 0;
z.cpp:7: error: invalid operands of types `const char[3]' and `int' to binary `operator&'
z.cpp:9: error: invalid operands of types `const char[3]' and `int' to binary `operator&'
z.cpp:11: error: invalid operands of types `const char[3]' and `int' to binary `operator&'
z.cpp:13:2: warning: no newline at end of file
Вот на что он ругается.
Рыжий Лис
Просто Лис
 Аватар для Рыжий Лис
209 / 164 / 44
Регистрация: 17.05.2012
Сообщений: 611
Записей в блоге: 4
23.10.2013, 20:26     Ребят, как разобраться в составлении программы на Си. Прошу #18
Цитата Сообщение от Mistikkx Посмотреть сообщение
if (D<200){
summ = D;
}
if (D<500){
summ = D;
}
if (D<800){
summ = D;
}
if (D<1000){
summ = D;
Правильно. А теперь умножь на проценты
Mistikkx
1 / 1 / 0
Регистрация: 04.10.2013
Сообщений: 77
23.10.2013, 20:27  [ТС]     Ребят, как разобраться в составлении программы на Си. Прошу #19
Цитата Сообщение от Рыжий Лис Посмотреть сообщение
Что хранится в D? Если ничего, то удали
То есть, как Я правильно вас понял, то D (Стоимость со скидкой) мы получим в итоге ?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.10.2013, 20:30     Ребят, как разобраться в составлении программы на Си. Прошу
Еще ссылки по теме:

C++ ребят, как переделать код программы для Borland++?
C++ Прошу объяснить работу готовой программы
C++ Прошу помощи в доработке программы по шифрованию Вернама

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

Или воспользуйтесь поиском по форуму:
Рыжий Лис
Просто Лис
 Аватар для Рыжий Лис
209 / 164 / 44
Регистрация: 17.05.2012
Сообщений: 611
Записей в блоге: 4
23.10.2013, 20:30     Ребят, как разобраться в составлении программы на Си. Прошу #20
Цитата Сообщение от Mistikkx Посмотреть сообщение
Вот на что он ругается.
закрой скобки в scanf и поставь запятые между параметрами в этих строчках
C++
1
2
scanf ("%d"&x1;
scanf ("%d"&x2;
Добавлено через 1 минуту
Цитата Сообщение от Mistikkx Посмотреть сообщение
D (Стоимость со скидкой) мы получим в итоге
Ладно, переменная пусть остается. Удали строчку
C++
1
scanf ("%d"&D);
ведь D мы будем считать, а не вводить с клавиатуры
Yandex
Объявления
23.10.2013, 20:30     Ребят, как разобраться в составлении программы на Си. Прошу
Ответ Создать тему
Опции темы

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