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

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

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 12.10.2018, 00:05   #1
Georgi_Mamaeм
Новичок
Джуниор
 
Регистрация: 12.10.2018
Сообщений: 2
По умолчанию Написать скрипт, преобразующий полученное от пользователя число в десятичной форме записи (1, 5, 10, 50, 100, 500, 1000) в римскую форму (I, V, X, L, C, D, M)

Помогите дибилу это сделать, если можно с объяснениями почему и как. Буду очень благодарен!)
Написать скрипт, преобразующий полученное от пользователя число в десятичной форме записи (1, 5, 10, 50, 100, 500, 1000) в римскую форму (I, V, X, L, C, D, M). Предусмотреть проверку корректности ввода данных.
Georgi_Mamaeм вне форума Ответить с цитированием
Старый 12.10.2018, 00:15   #2
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,238
По умолчанию

Перевод чисел из десятичной в римскую запись

Код:
function number_to_roman($value)
{
    if($value<0) return "";
    if(!$value) return "0";
    $thousands=(int)($value/1000);
    $value-=$thousands*1000;
    $result=str_repeat("M",$thousands);
    $table=array(
        900=>"CM",500=>"D",400=>"CD",100=>"C",
        90=>"XC",50=>"L",40=>"XL",10=>"X",
        9=>"IX",5=>"V",4=>"IV",1=>"I");
    while($value) {
        foreach($table as $part=>$fragment) if($part<=$value) break;
            $amount=(int)($value/$part);
        $value-=$part*$amount;
        $result.=str_repeat($fragment,$amount);
    }
    return $result;
}


Пример использования:
Код:
echo number_to_roman(21);

p.s. не проверял
Serge_Bliznykov вне форума Ответить с цитированием
Старый 28.10.2018, 16:16   #3
Georgi_Mamaeм
Новичок
Джуниор
 
Регистрация: 12.10.2018
Сообщений: 2
По умолчанию

Это задание решил, ели интересно могу скинуть решение)
Появились трудности с другим
Разработка сервис для решения квадратных уравнений. При входе на страницу пользователю предлагается ввести параметры квадратного уравнения (члены A, B и C из формулы 1. В случае нахождения корней, необходимо отобразить пользователю их, в случае отсутствия корней – оповестить пользователя об этом.

Предусмотреть проверку вводимых пользователем данных.

Ax2 + Bx + C = 0

Формула 1 – квадратное уравнение
Тут прям затуп, в том задании чуть проще решение чем вы написали
Georgi_Mamaeм вне форума Ответить с цитированием
Старый 28.10.2018, 16:20   #4
ADSoft
Старожил
 
Регистрация: 25.02.2007
Сообщений: 4,150
По умолчанию

Элементарно, узнаете как решаются квадратные уравнения в математике и применяет это алгоритм, формулу.
ADSoft на форуме Ответить с цитированием
Ответ


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

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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Напишите программу, которая разменивает ваши деньги по купюрам 1000, 500, 100, 50, 20, 5, 1. ibonya Общие вопросы по Java, Java SE, Kotlin 1 25.01.2017 13:51
Машина Тьюринга: Постройте функциональную схему машины, реализующей переход от десятичной записи числа n к десятичной записи (n-1) Елешечка Помощь студентам 0 02.04.2014 21:43
Написать программу на си под линукс которая осуществляет подсчет количества слов в текстовом файле и записывает полученное число в tarasman11 Общие вопросы C/C++ 11 19.11.2012 21:41
Напечатать все цифры десятичной записи чисел 2^500 и 1!+2!+3!+...+100!. dmitriy20104 Паскаль, Turbo Pascal, PascalABC.NET 3 21.08.2012 07:00
Написать схематично программу с функцией, возвращающей целое число и число с десятичной точкой(Экзам. вопрос). datileo Visual C++ 1 22.06.2011 09:49