Полюбите код! И он полюбит Вас!

Последние комментарии:

Марат : Для этого и делали! Рад, что помог! Приходите ещё! далее

2018-02-16 20:31:51



Виктор : Спасибо! Очень полезная статья. Нужно было очистить всю базу данных, далее

2018-02-16 20:30:13



Евгений : Спасибо за перевод sublime!!!! далее

2018-02-15 16:42:05



Марат : Вообще, после написания статьи - у них вышло обновление, может далее

2018-02-13 19:19:01



Сергей : Доброе время суток!После правки кода, капчи вообще нет! Ни старой, далее

2018-02-13 19:10:15



Это интересно:

Рейтинги страниц.

Вы здесь - Главная - PHP

Задача о трех банках php, задача для начинающих

Поскольку задача не имеет название, а задачу по php надо как-то называть, то я назвал эту задачу,  как  «Задача о трёх банках.

Условие задачи:

Кредит предлагают 3 банка, и все на разных условиях:

Общая сумма кредита 40.000 рублей

1 Банк

кредит за 4% и (мелким шрифтом) 500 р комиссии в месяц от HomoCredit

2 Банк

кредит за 3% и 1000 р комиссии в месяц от того же банка (Softbank)

3 Банк

предложение от StrawberryBank за 2% в месяц, без комиссии, но с платой в размере 7777 р за открытие счета (эту сумма прибавляется к сумме долга)

Вопрос:

Какой из этих кредитов самый дорогой, какой из этих кредитов самый дешёвый?

Сколько заплатил человек всего.

Данную информацию вывести на экран.

Решение задачи по Php погасить кредит.

Данную задачку, я решал в самом начале пути - изучения php, но когда мы переходили на новый дизайн, то мы пересматривали все страницы, анализируя содержание и тут мы пришли в некоторое замешательство, потому, что понять, как решается данная задачка я не смог! Поэтому, мы её решим заново и с новыми знаниями!

Первое,

что вы всегда должны делать – это внятно и понятно писать названия переменных. И если вы только начинаете изучать php, то делайте подсказки по коду.

Потому, что потом, пройдет неделя, и уверяю вас – вы забудете напрочь о чем это тут вы писали!

Второе -

это создание алгоритма, либо на бумаге, либо в компьютере.

И давайте создадим алгоритм.

Когда я её решал в первый раз, то потратил довольно много времени, а сейчас заново решил и написал страницу примерно за 1 час… Задача довольно простая, и мы не будем создавать огромные конструкции и вам не советую, делайте как можно проще! И если честно, то особого алгоритма здесь я не наблюдаю…

Создадим 3 цикла, в которых рассчитаем по очереди наши проценты для каждого банка…

Введем переменную - $summa она равна сумме кредита. Эта переменная у нас должна остаться без изменений к концу работы скрипта.

Далее нам нужно создать еще несколько переменных, которые будут также равны верхней переменной, но уже с ними мы будем работать в цикле.

Для работы в цикле нам нужно две переменные для первого банка такие:

Для первого банка $summa_bank_1_res = $summa = 40000.

Где $summa_bank_1_res – это та же сумма кредита, только будем её использовать в цикле, как изменяемую, также поступим со вторым банком, но с третим эта конструкция немного изменится, потому, что начальная сумма уменьшится на сумме первого платежа 7777руб.

Наши начальные переменные:

$summa_bank_2_res = $summa_bank_1_res = $summa = 40000;

$summa_bank_3_res = $summa - 7777;

И давайте напишем первый цикл , переменная $month – месяцы, начинаются с нуля, возьмем количество месяцев 100, чтобы точно не ошибиться.

Напишем - если $summa_bank_1_res меньше нуля, то останавливаем цикл break

Из основного условия сумма после первого месяца платежа должна уменьшится на 4% + 500рублей ежемесячного платежа.

$summa_bank_1_res = $summa_bank_1_res - (($summa * 0.04) + 500);

И для удобства добавим счетчик

$n_bank_1 = $n_bank_1 + 1;

Наш код для первого банка:

for ($month=0; $month < 100; $month++) {      

    if ($summa_bank_1_res < 0 ) 

    {

    echo "<br>УРА месяцев прошло $month : $summa_bank_1_res".' - это  bank 1<br>' ; break;

    }

    else

    {

    $summa_bank_1_res = $summa_bank_1_res - (($summa * 0.04) + 500);  

    $n_bank_1 =  $n_bank_1 + 1; 

    echo $n_bank_1.' '.$summa_bank_1_res.'<br>' ;   

    }     

}

Смотрим результат работы скрипта…

1 37900
2 35800
3 33700
4 31600
5 29500
6 27400
7 25300
8 23200
9 21100
10 19000
11 16900
12 14800
13 12700
14 10600
15 8500
16 6400
17 4300
18 2200
19 100
20 -2000

УРА месяцев прошло 20 : -2000 - это bank 1

далее для второго и третьего банка...

for ($month=0; $month < 100; $month++) {          

    if ($summa_bank_2_res < 0 ) 

    {

    echo "<br>УРА месяцев прошло $month : $summa_bank_2_res".' - это  bank 2<br>' ; break;

    }

    else

    {

    $summa_bank_2_res = $summa_bank_2_res - (($summa * 0.03) + 1000); 

    $n_bank_2 =  $n_bank_2 + 1; 

    echo $n_bank_2.' '.$summa_bank_2_res.'<br>' ;

    }   

}

for ($month=0; $month < 100; $month++) {       

    if ($summa_bank_3_res < 0 ) 

    {

    echo "<br>УРА месяцев прошло $month : $summa_bank_3_res".' - это  bank 3 <br>' ; break;

    }

    else

    {

    $summa_bank_3_res = $summa_bank_3_res  -($summa *0.03);

    $n_bank_3 =  $n_bank_3 + 1; 

    echo $n_bank_3.' '.$summa_bank_3_res.'<br>' ;

    }  

}

Результат:

1 37800
2 35600
3 33400
4 31200
5 29000
6 26800
7 24600
8 22400
9 20200
10 18000
11 15800
12 13600
13 11400
14 9200
15 7000
16 4800
17 2600
18 400
19 -1800

УРА месяцев прошло 19 : -1800 - это bank 2

1 31023
2 29823
3 28623
4 27423
5 26223
6 25023
7 23823
8 22623
9 21423
10 20223
11 19023
12 17823
13 16623
14 15423
15 14223
16 13023
17 11823
18 10623
19 9423
20 8223
21 7023
22 5823
23 4623
24 3423
25 2223
26 1023
27 -177

УРА месяцев прошло 27 : -177 - это bank 3

Кто сколько заплатил

$N1 = $summa -$summa_bank_1_res;

$N2 = $summa -$summa_bank_2_res;

$N3 = $summa -$summa_bank_3_res;

echo 'Месяцев'. $n_bank_1.' Переплата '.$summa_bank_1_res.' ЗАПЛАТИЛ '.$N1.'<br>' ; 

echo 'Месяцев'. $n_bank_2.' Переплата '.$summa_bank_2_res.' ЗАПЛАТИЛ '.$N2.'<br>' ;  

echo 'Месяцев'. $n_bank_3.' Переплата '.$summa_bank_3_res.' ЗАПЛАТИЛ '.$N3.'<br>' ;  

Результат:

Месяцев 20 Переплата -2000 ЗАПЛАТИЛ банку №1 42000
Месяцев 19 Переплата -1800 ЗАПЛАТИЛ банку №2 41800
Месяцев 27 Переплата -177 ЗАПЛАТИЛ банку №3 40177

Ну и последнее какой кретит самый дешевый и какой самы дорогой...

if (($summa_bank_1_res > $summa_bank_2_res) && ($summa_bank_1_res > $summa_bank_3_res)){

    echo 'Кредит банка №1 - Самый дешевый';

}

if (($summa_bank_2_res > $summa_bank_1_res) && ($summa_bank_2_res > $summa_bank_3_res)){

    echo 'Кредит банка №2 - Самый дешевый';

}

if (($summa_bank_3_res > $summa_bank_1_res) && ($summa_bank_3_res > $summa_bank_2_res)){

    echo 'Кредит банка №3 - Самый дешевый';

}

//ЕСЛИ ЦИФРА МЕНЬШЕ, ТО ЭТО САМЫЙ ДЕШЕВЫЙ

if (($summa_bank_1_res < $summa_bank_2_res) && ($summa_bank_1_res < $summa_bank_3_res)){

    echo 'Кредит банка №1 - Самый дорогой';

}

if (($summa_bank_2_res < $summa_bank_1_res) && ($summa_bank_2_res < $summa_bank_3_res)){

    echo 'Кредит банка №2 - Самый дорогой';

}

if (($summa_bank_3_res < $summa_bank_1_res) && ($summa_bank_3_res < $summa_bank_2_res)){

    echo 'Кредит банка №3 - Самый дорогой';

}

 

Результат:

Кредит банка №3 - Самый дешевый
Кредит банка №1 - Самый дорогой

Скопировать коды

Понравилась статья!? Не стесняйся – поделись ссылкой!

И!

Пожалуйста! Если вам не трудно - прокомментируйте то, что вы прочитали! Вам понравилось, или не понравилось! Напишите, какие мысли возникли у вас, и это бесплатно для вас, но очень ценно для нас!!! Всё, что вы здесь видите - это написано для вас! Никаким другим образом мы не можем понять вашу реакцию. Может, что-то стоит добавить или наоборот убрать. Либо, что-то стоило изменить...

P.S.

25 октября 2017

Мы запустили подписку на новости по емайлу, как только выходит новая статья, то будет отправлено сообщение на почту, что вышла новая статья!

Почему стоит подписаться на наши новости!?

Расскажу историю, вчера искал ответ на один из вопросов (конечно, я могу и сам написать, но чаще всего, вначале, ищу в интернете, может есть готовое решение…) и было множество вариантов, которые были описаны, но ни одного, с примерами! И мало того, что они предлагают решения, которые непонятно как реализовывать, особенно новичкам, у которых больше вопросов, чем ответов. Так они еще и не работают!

У нас же, на сайте – только рабочие проверенные скрипты! Полностью с описанием и с примерами! И реализовать может человек с нулевыми знаниями!

Мы есть здесь:

Проголосовать за статью!
  С 24 сентября мы запускаем новый скрипт в тестовом режиме (только свои скрипты)
  Вы можете проголосовать за понравившуюся статью.

  Еще никто не проголосовал
    


Просмотров 485

Друзья!

Для того, чтобы вы получили бесплатную информацию, мы потратили и время и деньги!

Мы существуем от кликов по рекламе!

Если вы не нашли подходящего блока объявлений, то вы еще можете помочь проекту!

Не стесняйтесь!

Даже самая маленькая сумма будет употреблена на продвижение и улучшение проекта!

Заранее благодарим Вас!

Оставить комментарий:

Для отображения аватара после отправки сообщения, необходимо быть зарегистрированным в Граватаре.



Комментарии

Комментариев пока нет.

* Обязательные поля
(Не публикуется)
 
Жирный Курсив Подчеркнутый Перечеркнутый Степень Индекс Код PHP Код Кавычки Вставить линию Вставить маркированный список Вставить нумерованный список Вставить ссылку Вставить e-mail Вставить изображение Вставить видео
 
Улыбка Печаль Удивление Смех Злость Язык Возмущение Ухмылка Подмигнуть Испуг Круто Скука Смущение Несерьёзно Шокирован
 
5000
Напишите третье слово этого предложения.
 
(введите ответ)
 
Уведомлять о новых коментариях по почте.
 

Оставить комментарии через вконтакте

Все дела сделаны!

Теперь можно и поиграть!

Понравилась игра!? Растфнуть на весь экран

Улучши поведенческий фактор на своём сайте.

Забери код здесь

Пишем полную инструкцию о пользовании ruweb.net + DirectAdmin

RuWeb.net - гибкий хостинг
Индекс цитирования