UCHEES.RU - помощь студентам и школьникам

Улитка ползёт по вертикальному шесту высотой h метров, поднимаясь за день ** a метров, а...


В 15:003 поступил вопрос в раздел Информатика, который вызвал затруднения у обучающегося.

Вопрос вызвавший трудности

Улитка ползёт по вертикальному шесту высотой h метров, поднимаясь за день на a метров, а за ночь спускаясь на b метров. На какой день улитка доползёт до вершины шеста?

Входные данные
Программа получает на вход натуральные числа h, a, b. Гарантируется, что a>b.

Выходные данные
Программа должна вывести одно натуральное число.

Примечание
При решении этой задачи нельзя пользоваться условной инструкцией if и циклами.

Примеры
входные данные
10
3
2
выходные данные
8
входные данные
20
7
3
выходные данные
5

Ответ подготовленный экспертами Учись.Ru

Для того чтобы дать полноценный ответ, был привлечен специалист, который хорошо разбирается требуемой тематике "Информатика". Ваш вопрос звучал следующим образом:

Улитка ползёт по вертикальному шесту высотой h метров, поднимаясь за день на a метров, а за ночь спускаясь на b метров. На какой день улитка доползёт до вершины шеста?

Входные данные
Программа получает на вход натуральные числа h, a, b. Гарантируется, что a>b.

Выходные данные
Программа должна вывести одно натуральное число.

Примечание
При решении этой задачи нельзя пользоваться условной инструкцией if и циклами.

Примеры
входные данные
10
3
2
выходные данные
8
входные данные
20
7
3
выходные данные
5

После проведенного совещания с другими специалистами нашего сервиса, мы склонны полагать, что правильный ответ на заданный вами вопрос будет звучать следующим образом:

// PascalABC.NET 3.1, сборка 1250 от 28.05.2016
begin
  var h,a,b:integer;
  Write('Введите h a b: '); Read(h,a,b);
  Writeln(Ceil((h-a)/(a-b))+1)
end.

Примеры решения
Введите h a b: 10 3 2
8

Введите h a b: 20 7 3
5


-------------------

Var
    d, a, b, h, s: integer;

begin
    readln(h, a, b);
    {проверка}        
    d := 0;
    s := 0;
    repeat
        d := d + 1;
        s := s + a;
        if s >= h then break;
        
        s := s - b;
    until s >= h;
    writeln('Проверка дней = ', d);
    writeln();
    
    {решение без циклов и условных операторов}
    h := h - a;
    b := a - b;
    s := (b - h mod b) mod b; {добавка до целого}
    d := 1 + (h + s) div b;
    writeln('Дней = ', d);    
end.



НЕСКОЛЬКО СЛОВ ОБ АВТОРЕ ЭТОГО ОТВЕТА:

Работы, которые я готовлю для студентов, преподаватели всегда оценивают на отлично. Я занимаюсь написанием студенческих работ уже более 4-х лет. За это время, мне еще ни разу не возвращали выполненную работу на доработку! Если вы желаете заказать у меня помощь оставьте заявку на этом сайте. Ознакомиться с отзывами моих клиентов можно на этой странице.

Савина Франсуаза Антоновна - автор студенческих работ, заработанная сумма за  прошлый месяц 51 732 рублей. Её работа началась с того, что она просто откликнулась на эту вакансию

ПОМОГАЕМ УЧИТЬСЯ НА ОТЛИЧНО!

Выполняем ученические работы любой сложности на заказ. Гарантируем низкие цены и высокое качество.

Деятельность компании в цифрах:

Зачтено оказывает услуги помощи студентам с 1999 года. За все время деятельности мы выполнили более 400 тысяч работ. Написанные нами работы все были успешно защищены и сданы. К настоящему моменту наши офисы работают в 40 городах.

РАЗДЕЛЫ САЙТА

Ответы на вопросы - в этот раздел попадают вопросы, которые задают нам посетители нашего сайта. Рубрику ведут эксперты различных научных отраслей.

Полезные статьи - раздел наполняется студенческой информацией, которая может помочь в сдаче экзаменов и сессий, а так же при написании различных учебных работ.

Красивые высказывания - цитаты, афоризмы, статусы для социальных сетей. Мы собрали полный сборник высказываний всех народов мира и отсортировали его по соответствующим рубрикам. Вы можете свободно поделиться любой цитатой с нашего сайта в социальных сетях без предварительного уведомления администрации.

ЗАДАТЬ ВОПРОС

НОВЫЕ ОТВЕТЫ

ПОХОЖИЕ ВОПРОСЫ