Аватар для Индустриальный
1 / 0 / 0
Регистрация: 13.02.2010
Сообщений: 15

Система денежных едениц великобритании - старые и новые

02.03.2010, 18:41. Показов 36719. Ответов 24
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте, в книге Лафоре есть такая задача:
Устаревшая денежная система Великобритании состояла из фунтов, шиллингов и пенсов. 1 фунт был равен 20 шилингам, 1 шилинг - 12 пенсам....Например, запись 5.2.8 обозначала 5 фунтов, 2 шиллинга и 8 пенсов(пенс - множественное число от пенни). Современная денежная система состоит только из фунтов и пенсов, причём один фунт равен 100 пенсам. Такой фунт называют десятичным.
таким образом 5.2.8 = 5.13(если быть точнее 5.133333).
7.17.9(по старой системе) = 7.89(по новой)
Я никак не могу понять алгоритм по которому преобразуются деньги..кто нибудь сталкивался с такой задачей?! ответьте пожалуйста....
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
02.03.2010, 18:41
Ответы с готовыми решениями:

Что лучше оставить старые планки и добавить новые, или вытащить их и поставить новые?
Привет всем нуждаюсь в совете. У меня комп на базе AMD Мамка A8N-SLI Deluxe. Сейчас стоит у меня 2 планки Corsair Value Select...

Вывести старые и новые цены.
Народ решите задачу пожалуйста очень надо. Условия: Цены на два вида товара выросли на p процентов.Вывести старые и новые цены.

Тормозят игры, новые и старые
Очень давно стал замечать, что 90% игр тормозят из-за теней, 9% древние игры, в которых нет теней, при отключении теней игра перестает...

24
0 / 0 / 0
Регистрация: 26.04.2017
Сообщений: 37
28.04.2017, 01:52
Студворк — интернет-сервис помощи студентам
Если в новом фунте 240 старых пенсов то в старом фунте сколько старых пенсов?
Фунт то не изменился, изменился пенни и убрали шиллинги, произошел переход с двенадцатеричной денежной системы на десятичную. 240 старых пенсов = 100 новых пенсов.
по условию задачи
"В 50-е годы XX века, состоит только из фунтов и пенсов, причем 1 фунт равен 100 пенсам. Такой фунт называют десятичным."
По моему мнению алгоритм делить на 240 не правильный потому что он не учитывает разницу между старым и новым пенни
К примеру как бы ты посчитал старый фунт в новый если бы новый фунт был бы не 100 пенсов,а 150 пенсов?

1232/240 = 5.13 (деление на 240 не учитываем разницу было 240 стало 100)
240/100 = 2.4(учитываем разницу)
5.2.8 =5.(32/2.4) = 5.13
5.13 и 5.13 срастается!

1232/240 = 5.13(деление на 240 не учитываем разницу было 240 стало 150)
240/150 =1.6(учитываем разницу)
5.2.8 = 5.(32/1.6) = 5.20
5.20 и 5.13 что то НЕ срастается!

по этому делить на 240 будет же не логично
может я тут реально что то недопонимаю, по этому я и спрашиваю чтобы разрешить, хочу разобраться)

Кстати вот второй пост данной темы мне больше понятен.
0
440 / 432 / 159
Регистрация: 21.05.2016
Сообщений: 1,338
28.04.2017, 03:17
Цитата Сообщение от Achill Посмотреть сообщение
5.20 и 5.13 что то НЕ срастается!
5.13 фунтов = 5 фунтов 20 пенсов

1232/240 = 5.13 фунтов
Если в новом фунте 150 пенсов, получаем, что 5.13 фунтов = 5 фунтов + 0.13 фунтов = 5 фунтов + (0.13 * 150) пенсов = 5 фунтов 20 пенсов
0
0 / 0 / 0
Регистрация: 26.04.2017
Сообщений: 37
28.04.2017, 21:57
Цитата Сообщение от oldnewyear Посмотреть сообщение
5.13 фунтов = 5 фунтов 20 пенсов
1232/240 = 5.13 фунтов
Если в новом фунте 150 пенсов, получаем, что 5.13 фунтов = 5 фунтов + 0.13 фунтов = 5 фунтов + (0.13 * 150) пенсов = 5 фунтов 20 пенсов
А теперь посмотри на 12 пост данной темы(где не учитывается разница нового и старого фунта) и прикинь что по условию задачи было бы 1 новый фунт = 150 пенсов, а не 100, там пришлось бы переделывать код, более того 0.13 *150 = 19.5 и если сложить с фунтами то получится 24.5, а не 5.20
по этому нужно еще делить на 100(тогда получится 0.195) чтобы получить десятичную дробь либо выводить по отдельности десятичные фунты и пенсы.

по твоему решению выйдет что то такое
если фунт равен 150 пенсов:
f=5; s=2; p=8;
pAll=f*20+s*12+p //1232
fnew = pAll/240 //5.13
p = fnew - f; // 0.13
p = p*150 //19.5

cout << fnew <<'.'<< p; //5.19.5
Ну и зачем делить 1232 на 240 если все равно придется оперировать с десятичной частью нового фунта потому что нужно учитывать разницу старого и нового фунта?
В чем вообще логика делить общее количество старых пенсов на старый курс 240к1 если новый курс 1к100?

В этом варианте учитывается разница нового и старого фунта и при необходимости можно поменять только разницу нового фунта и все 240/150= 1.6.
f=5; s=2; p=8;
s*20+p =32
p = 32/1.6 //20
f += p/100 //0.20
cout << f; //5.20
0
2 / 2 / 0
Регистрация: 23.05.2019
Сообщений: 14
23.05.2019, 22:07
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include<iostream>
using namespace std;
int main()
{
    float pound;
    int penny, shilling;
    cout<<"Введите число десятичных фунтов: ";
    cin>>pound;
    
    penny=240*pound;      
    pound=static_cast<int>(pound);
    shilling=penny/12-pound*20;
    penny=penny%12;
    
    cout<<Фунты-шиллинги-пенни: "<<pound<<"."<<shilling<<"."<<penny<<endl;
    return 0;
}
0
 Аватар для darzza
1 / 1 / 0
Регистрация: 18.03.2020
Сообщений: 4
16.09.2020, 10:48
Доброго времени суток.
Делюсь тем как сделал я:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream>
#include <windows.h>
using namespace std;
int main()
{
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);
    float Фунт, Шиллинг, Пенс;
    cout << "Введите количество фунтов: ";
    cin >> Фунт;
    cout << "Введите количество шиллингов: ";
    cin >> Шиллинг;
    cout << "Введите количество пенсов: ";
    cin >> Пенс;
    Фунт += Пенс = ((((Шиллинг * 12) + Пенс) / 2.4) / 100);
    cout << "Десятичных фунтов: " << "J" << Фунт << endl;
    return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
16.09.2020, 10:48
Помогаю со студенческими работами здесь

Изменить старые данные в БД на новые
в общем у меня база данных, я нахожу какие то данные, делаю корректировку и потом эти откоректированные данные вношу в таблицу причем...

Подвисают многие старые и новые игры
Здравствуйте, У меня такая проблема: мне отдали компьютер, я его аппгрейдил и вот что получилось: - системная плата - Asus P4C800...

Зависают все новые и старые игры на компьютере.
всем привет,у меня такой вопрос. почему у меня логают как старые так и новые игры??? вот моё железо Компьютер: Тип...

Не открываются старые проекты (выгружены), не создаются новые
Добрый день! Помогите решить проблемы с Visual Studio Не могу ни создать новый проект (пишет &quot;неожиданный маркер...

Как определить, потянет ли старые БП новые комплектующие?
Подскажите, плиз, как определить, сколько еще по мощности БП может потянуть оборудования на ПК? Так, хочу поменять видюху с 240 на 660. но...


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

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

Новые блоги и статьи
FSharp: interface of module
DevAlt 16.05.2026
Интерфейс модуля F# позволяет управлять доступностью членов, содержащихся в реализации модуля. По-умолчанию все члены модуля доступны: module Foo let x = 10 let boo () = printfn "boo" . . .
Хитросплетение родственных связей пантеона греческих богов.
russiannick 14.05.2026
Однооконник, позволяющий узреть и изучить отдельных героев древней Греции. <!DOCTYPE html> <html lang="ru"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible". . .
[golang] Угол между стрелками часов
alhaos 12.05.2026
По заданным значениям часа и минуты необходимо определить значение меньшего угла между стрелками аналогового циферблата часов. import "math" func angleClock(hour int, minutes int) float64 { . . .
Debian 13: Установка Lazarus QT5
ВитГо 09.05.2026
Эта инструкция моя компиляция инструкций volvo https:/ / www. cyberforum. ru/ blogs/ 203668/ 10753. html и его же старой инструкции по установке Lazarus с gtk2. . .
Нейросеть на алгоритме "эстафета хвоста" как перспектива.
Hrethgir 06.05.2026
На десерт, когда запущу сервер. Статья тут https:/ / habr. com/ ru/ articles/ 1030914/ . Автор я сам, нейросеть только помогает в вопросах которые мне не известны - не знаю людей которые знали-бы. . .
Асинхронный приём данных из COM-порта
Argus19 01.05.2026
Асинхронный приём данных из COM-порта Купил на aliexpress термопринтер QR701. Он оказался странным. Поключил к Arduino Nano. Был очень удивлён. Наотрез отказывается печатать русские буквы. Чтобы. . .
попытка написать игровой сервер на C++
pyirrlicht 29.04.2026
попытка написать игровой сервер на плюсах с открытым бесконечным миром. возможно получится прикрутить интерпретатор питон для кастомизации игровой логики. что есть на текущий момент:. . .
Контроль уникальности выбранного документа-основания при изменении реквизита
Maks 28.04.2026
Алгоритм из решения ниже разработан на примере нетипового документа "ЗаявкаНаРемонтСпецтехники", разработанного в КА2. Задача: уведомлять пользователя, если указанная заявка (документ-основание). . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru