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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 16.12.2018, 09:58   #1
MaxVazovsky
Новичок
Джуниор
 
Регистрация: 16.12.2018
Сообщений: 1
По умолчанию Не могу написать программу на C#

Пусть турист в первый день прошел B километров, каждый следующий день он увеличивал свой путь на C %. На какой день его путь достигнет K километров.
Вот составил блок-схему не знаю правильно ли.
Изображения
Тип файла: png Безымянный.png (33.2 Кб, 112 просмотров)
Тип файла: jpg 4ZTwuFv8ZcM.jpg (38.0 Кб, 50 просмотров)
MaxVazovsky вне форума Ответить с цитированием
Старый 16.12.2018, 20:57   #2
Qaliti
Форумчанин
 
Регистрация: 04.01.2010
Сообщений: 229
По умолчанию

Ну начнем по порядку, блок схема красивая и правильная почти. Но есть небольшая ошибка по невнимательности, у тебя не будет учитывать первый день похода, в который он прошел первоначальные B. Так что нужно сделать n не 0, а 1.
А вот в проге не плохой косяк. Сравнивать i с К cовсем не стоит, хотя бы потому что одно это счетчик, но ты наверное предположил что он дни, а вот K это расстояние... дни с расстоянием сравнивать не стоит. Поэтому лучше примени цикл while, и с K сравнивай расстояние которое пройдено, то есть B. И там же про n = 1 не забудь
Код:
double n = 1;
while (B < K)
{
   C = C/100;
   B = B + B * C;
   n = n + 1;
}

Последний раз редактировалось Qaliti; 16.12.2018 в 21:20.
Qaliti вне форума Ответить с цитированием
Старый 16.12.2018, 21:13   #3
Qaliti
Форумчанин
 
Регистрация: 04.01.2010
Сообщений: 229
По умолчанию

Тут кстати может быть вопрос задачи с подвохом. "каждый следующий день он увеличивал свой путь на C %". Увеличил путь он путь относительно первого дня, или каждый день относительно всего пути за все дни? Задачу ты решил для второго варианта. А вот для первого варианта нужно прибавлять процент пути от первого дня. Но из условия не понятно что имелось ввиду. Для первого варианта будет выглядеть так:
Код:
double n = 1;
bouble B_copy = B;
while (B < K)
{
   C = C/100;
   B = B + B_copy * C;
   n = n + 1;
}
Qaliti вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Не могу написать программу в c++ Rent05 Помощь студентам 1 26.06.2012 01:10
Не могу написать программу (С++) Alenka' Помощь студентам 3 12.11.2011 15:29
не могу написать программу. Нютик Паскаль, Turbo Pascal, PascalABC.NET 4 15.03.2011 21:49
Не могу написать программу! SoundKiller Помощь студентам 1 19.10.2010 22:51
Не могу написать программу. v.olga Помощь студентам 4 23.03.2010 17:48