Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 24.10.2011, 19:03   #1
Sylar9
Форумчанин
 
Регистрация: 22.10.2011
Сообщений: 252
Вопрос Наталкнити на мысли

Не могу понять как это можно сделать

Напишите программу, предлагающую пользователю ввести определенное 1-, 5-, 10-, 25-, 50-центовых и долларовых монет. Пользователь должен по отдельности ввести количество монет каждого достоинства, например "Сколько у вас одно-центовых монет?" Результат должен выглядеть следующим образом.
У вас 23 одноцентовые монеты.
У вас 17 пятицентовых монет.
У вас 14 десятицентовых монет.
У вас 7 25-центовых монет.
У вас 3 50-центовые монеты.
Общая стоимость ваших монет равна 573 центам.
Попробуйте вывести числа, выровняв их по правому краю. Попробуйте, должно получиться. Усовершенствуйте программу: если у пользователя только одна мо¬нета, выведите ответ в грамматически правильной форме. Например, "14 десятицентовых монет" и "1 одноцентовая монета" (а не "1 одноцентовых монет"). Кроме того, выведите результат в долларах и центах, т.е. 5,73 доллара, а не 573 цента.

Может взять в цикл фор и провести проверку?
Sylar9 вне форума Ответить с цитированием
Старый 24.10.2011, 20:21   #2
Val-li
Новичок
Джуниор
 
Регистрация: 24.10.2011
Сообщений: 3
По умолчанию

Что ты хочешь взять в цикл for?
По-моему надо просто просуммировать все числа, что вводит пользователь и получишь результат в центах, а если необходимо вывести результат в долларах, то просто раздели на 100.
Val-li вне форума Ответить с цитированием
Старый 24.10.2011, 22:36   #3
kypck
Пользователь
 
Регистрация: 23.10.2011
Сообщений: 35
По умолчанию

Цитата:
Сообщение от Val-li Посмотреть сообщение
Что ты хочешь взять в цикл for?
По-моему надо просто просуммировать все числа, что вводит пользователь и получишь результат в центах, а если необходимо вывести результат в долларах, то просто раздели на 100.


Если количество центов > 100, то делить на 100 и выводить в долларах. Если меньше 100, то писать как есть (центов).

Цитата:
Усовершенствуйте программу: если у пользователя только одна мо¬нета, выведите ответ в грамматически правильной форме.
а если 4 монеты? 3? 2? "4 (3,2) одноцентовых монет" тоже не катит х)

Последний раз редактировалось kypck; 24.10.2011 в 22:47.
kypck вне форума Ответить с цитированием
Старый 24.10.2011, 22:46   #4
kypck
Пользователь
 
Регистрация: 23.10.2011
Сообщений: 35
По умолчанию

Цитата:
Сообщение от Sylar9 Посмотреть сообщение
Не могу понять как это можно сделать
Код:
.................
int z50, z25, z10, z5, z1б:
float sum;
cout << "Сколько 50-центовых монет? \n";
cin >> z50;
cout << "Сколько 25-центовых монет? \n";
cin >> z25;
cout << "Сколько 10-центовых монет? \n";
cin >> z10;
cout << "Сколько 5-центовых монет? \n";
cin >> z5;
cout << "Сколько 1-центовых монет? \n";
cin >> z1;
sum = 50*z50 + 25*z25 + 10*z10 + 5*z5 + z1;
if (sum>100)
cout << "Общая стоимость ваших монет равна " << sum/100 << " долларов/n";
if (sum<100)
cout << "Общая стоимость ваших монет равна " << sum << " центов/n";
.....................
Вам осталось только сделать вывод количества каждого номинала монет в наличии, удачи :3
kypck вне форума Ответить с цитированием
Старый 25.05.2013, 04:11   #5
zip08
 
Аватар для zip08
 
Регистрация: 25.05.2013
Сообщений: 5
По умолчанию

#include

int main()
{
double sum,sum2;
int a5,a10,a15,a25,a50;
cout << "5 cent\n";
cin >> a5 ;
cout << "10 cent\n";
cin >> a10 ;
cout << "15 cent\n";
cin >> a15 ;
cout << "25 cent\n";
cin >> a25 ;
cout << "50 cent\n";
cin >> a50 ;
sum = 5*a5 + 10*a10 + 15*a15 + 25*a25 + 50*a50;
if (sum>=100)
cout << " summa money " << sum/100 << " doll/cent " ;
else
cout << " summa money cent " << sum << " cent ";
cout << endl << "Colichestvo nominala" << endl << "5c- " << a5
<< " 10c- " << a10
<< " 15c- " << a15
<< " 25c- " << a25
<< " 50c- " << a50 ;
}
Cujusvis hominis est errare, nullius nisi insipientis in errore perseverare

Последний раз редактировалось zip08; 25.05.2013 в 18:47.
zip08 вне форума Ответить с цитированием
Старый 25.05.2013, 20:48   #6
Nedward
Пользователь
 
Регистрация: 26.06.2011
Сообщений: 85
По умолчанию

Задачка легкая, но нудная. Решается без цикла, единственное место, куда тут можно вкорячить цикл - это в алгоритм расчета денег, да и то оно там не нужно. Я бы сделал как-то так:
Код:
#include <iostream>

using namespace std;

int main(void)
{
    cout << "Hello!" << endl;

    unsigned int c1, c5, c10, c25, c50, dCoin; //монеты
    unsigned int cents, dollars; //Центы и доллары

    //Вводим монеты:
    cout << "Enter number of coins:" << endl;
    cout << "1 cent: ";
    cin >> c1;
    cout << "5 cent: ";
    cin >> c5;
    cout << "10 cent: ";
    cin >> c10;
    cout << "25 cent: ";
    cin >> c25;
    cout << "50 cent: ";
    cin >> c50;
    cout << "1 dollar: ";
    cin >> dCoin;

    //считаем количество денег:
    cents = c1 + (c5*5) + (c10*10) + (c25*25) + (c50*50);
    dollars = dCoin + cents/100;
    cents = cents % 100;

    //Делаем красивый вывод:
    cout << endl;
    cout << "You have " << c1    << " \"1  cent\" coins." << endl;
    cout << "You have " << c5    << " \"5  cent\" coins." << endl;
    cout << "You have " << c10   << " \"10 cent\" coins." << endl;
    cout << "You have " << c25   << " \"25 cent\" coins." << endl;
    cout << "You have " << c50   << " \"50 cent\" coins." << endl;
    cout << "You have " << dCoin << " \"1  dollar\" coins." << endl << endl;

    cout << "All you monet: " << dollars << " d, " << cents << " c" << endl;
}
Осталось только сделать красивый вывод, в зависимости от количества монет (0 - не выводить строку с количеством монет вообще, 1 монета - писать coin, вместо coins), но это мне делать уже было лень
Всегда пишите код так, будто сопровождать его будет склонный к насилию психопат, который знает, где вы живете. (c) Martin Golding
Nedward вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Мысли по поводу теней в 2D Ulex Gamedev - cоздание игр: Unity, OpenGL, DirectX 3 30.07.2011 15:06
Чудо инженерной мысли sweex1234 Помощь студентам 1 17.02.2011 19:02
Несвоевременные мысли. (М. Горький) Rapid Свободное общение 11 01.12.2010 17:32
Мысли Elm0 Свободное общение 0 23.06.2007 21:42