0 / 0 / 0
Регистрация: 28.11.2019
Сообщений: 5

Простая задачка про лягушку с функцией и циклами for и while

28.11.2019, 01:12. Показов 4515. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Есть улица шириной 2.5 метра и лягушка хочет её пересечь. Первым прыжком она преодолевает 1 метр, но каждый её след. прыжок - это лишь половина от предыдущего, (т.е. 0.5м, 0.25м, 0.125м и т.д.).

Определите функцию frog(n), которая определяет пройденную дистанцию после n прыжков.

Функция должна быть реализована: раз с while-циклом и раз с for-циклом (например, frog_while(n) и frog_for(n)).

Вариант с while у меня получился такой:
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
 
def frog_while(n):
 
        jump=float(1)
        street=float(2.5)
        distance=float(0)
       
        while jump!=0:
            distance=distance+ jump
            jump=jump/2
            n=n+1
            print('№ Прыжка:',n,'; Дистанция:,',distance,"м")
        print('Конец While-версии')
        
frog_while(n)
а вот вариант с "for" вообще в голову не лезет...
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
28.11.2019, 01:12
Ответы с готовыми решениями:

простая задачка с циклами
Помогите со 2 задачей, ну или придумуйте свое подобное

Простая задачка с циклами
сабж: Using the JavaScript language, have the function LetterCapitalize(str) take the str parameter being passed and capitalize the first...

Простая задачка про тернарный оператор
Переписал с учебника простую задачку, однако на 10 и 12 строке показывает ошибки. Что тут не так? #include<iostream> ...

3
 Аватар для codcw
815 / 527 / 214
Регистрация: 22.12.2017
Сообщений: 1,495
28.11.2019, 01:41
а вы while-версию проверяли?
0
0 / 0 / 0
Регистрация: 28.11.2019
Сообщений: 5
28.11.2019, 01:52  [ТС]
codcw, да, показывает 1075 прыжков и пишет "конец". Я понимаю, что значение прыжка должно бесконечно стремиться к нулю, но Python почему-то там, видимо, считает, что прыжок уже равен нулю. Но это не суть. Вопрос - как бы это с for-циклом сделать.

Ответ на эту задачу из учебника вообще так выглядит:
Python
1
2
3
4
5
6
7
8
9
10
sum = 0
old_sum = -1
eps = 0.0001
i = 1
 
while sum - old_sum > eps:
    old_sum = sum
    sum += i
    i = i / 2
    print(i, sum)
Но, повторюсь, интересует реализация функции frog_for(n) с помощью for-цикла
0
 Аватар для codcw
815 / 527 / 214
Регистрация: 22.12.2017
Сообщений: 1,495
28.11.2019, 02:10
ну тут всё просто - нужно реализовать while через for, на stackoverflow уже всё придумано до нас
Python
1
2
3
4
5
6
7
def infinity():
    while True:
        yield
for _ in infinity():
    #текст программы
        if jump==0:
            break
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
28.11.2019, 02:10
Помогаю со студенческими работами здесь

Простая задачка из собеседований(про з/п сотрудников толкового решения так и не нашёл)
Есть задачка- облазил весь инет в поисках нормального кода к ней, так и не нашёл - все как будто индусы писали( может сам пока что...

про лягушку
На Pascal: лягушка съедает на 20% больше комаров чем в предыдущий день и еще на два комара больше в последующий .через сколько дней она...

Игра про лягушку
Как-то играл в игру про лягушку и забыл что за игра, не могу найти. Такая простая и прикольная 3D - там просто есть один маршрут и ты...

Задачка с циклами
/ var chisl,a,b,x: real; begin write('Введите x:'); readln(x); while b<6 do begin b:=b+1;

задачка надо сделать с вложенными циклами
В каких трехзначных числах удвоенная сумма цифр равна их произведению?


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

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

Новые блоги и статьи
Реализация Domain-Driven Design с Java
Javaican 20.05.2025
DDD — это настоящий спасательный круг для проектов со сложной бизнес-логикой. Подход, предложенный Эриком Эвансом, позволяет создавать элегантные решения, которые точно отражают реальную предметную. . .
Возможности и нововведения C# 14
stackOverflow 20.05.2025
Выход версии C# 14, который ожидается вместе с . NET 10, приносит ряд интересных нововведений, действительно упрощающих жизнь разработчиков. Вы уже хотите опробовать эти новшества? Не проблема! Просто. . .
Собеседование по Node.js - вопросы и ответы
Reangularity 20.05.2025
Каждому разработчику рано или поздно приходится сталкиватся с техническими собеседованиями - этим стрессовым испытанием, где решается судьба карьерного роста и зарплатных ожиданий. В этой статье я. . .
Cython и C (СИ) расширения Python для максимальной производительности
py-thonny 20.05.2025
Python невероятно дружелюбен к начинающим и одновременно мощный для профи. Но стоит лишь заикнуться о высокопроизводительных вычислениях — и энтузиазм быстро улетучивается. Да, Питон медлительнее. . .
Безопасное программирование в Java и предотвращение уязвимостей (SQL-инъекции, XSS и др.)
Javaican 19.05.2025
Самые распространёные векторы атак на Java-приложения за последний год выглядят как классический "топ-3 хакерских фаворитов": SQL-инъекции (31%), межсайтовый скриптинг или XSS (28%) и CSRF-атаки. . .
Введение в Q# - язык квантовых вычислений от Microsoft
EggHead 19.05.2025
Microsoft вошла в гонку технологических гигантов с собственным языком программирования Q#, специально созданным для разработки квантовых алгоритмов. Но прежде чем погружаться в синтаксические дебри. . .
Безопасность Kubernetes с Falco и обнаружение вторжений
Mr. Docker 18.05.2025
Переход организаций к микросервисной архитектуре и контейнерным технологиям сопровождается лавинообразным ростом векторов атак — от тривиальных попыток взлома до многоступенчатых кибератак, способных. . .
Аугментация изображений с Python
AI_Generated 18.05.2025
Собрать достаточно большой датасет для обучения нейронной сети — та ещё головная боль. Часами вручную размечать картинки, скармливать их ненасытным алгоритмам и молиться, чтобы модель не сдулась при. . .
Исключения в Java: советы, примеры кода и многое другое
Javaican 18.05.2025
Исключения — это объекты, созданные когда программа сталкивается с непредвиденной ситуацией: файл не найден, сетевое соединение разорвано, деление на ноль. . . Список можно продолжать до бесконечности. . . .
Как сделать SSO (Single Sign-On) в C# приложении
stackOverflow 18.05.2025
SSO — это механизм, позволяющий пользователю пройти аутентификацию один раз и получить доступ к нескольким приложениям без повторного ввода учетных данных. Вы наверняка сталкивались с ним, когда. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru