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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 17.09.2019, 18:30   #1
Kuk29
Новичок
Джуниор
 
Регистрация: 17.09.2019
Сообщений: 3
По умолчанию Как нарисовать блок-схему?

Доброго времени суток.
уже вконец сломал голову.
нужно составить блок-схему, условие: Для целого числа к (от 1 до 99), напечатать фразу «Мне к лет», при этом в нужных случаях слово «лет» заменяется на слово «год» или «года». (Например: при k=76 «Мне 70 лет», при k=15 «Мне 15 лет», при к=23 «Мне 23 года» и т. п.)
Kuk29 вне форума Ответить с цитированием
Старый 17.09.2019, 18:31   #2
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Если кто-то просто решит за вас, это вряд ли поможет вам разобраться.

покажите свои наработки, конкретные вопросы и т.п.
http://www.programmersforum.ru/announcement.php?f=31

Или в раздел Фриланс если вы не хотите ничего делать, а ищете кого-то, кто выполнит ваши задачи за вознаграждение.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 17.09.2019, 20:35   #3
digitalis
Старожил
 
Аватар для digitalis
 
Регистрация: 04.02.2011
Сообщений: 4,534
По умолчанию

Нужели такие элементарнейшие действия могут вызвать непонятки?
Взять листок бумаги и расписать все словами для всех вариантов числа "если ... то, иначе если..." и т.д. Это по силам? А затем известными графическими символами (https://ru.wikipedia.org/wiki/Блок-схема) все это нарисовать. Делов-то... Минимальные логические построения голова в состоянии совершить? Нет - тогда "bambino sorry" .
Вот примерно так:
Изображения
Тип файла: jpg AlgK.JPG (12.2 Кб, 44 просмотров)
digitalis вне форума Ответить с цитированием
Старый 17.09.2019, 21:45   #4
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,238
По умолчанию

лучше так:
New_FlowChart_2.png

блок-схема сгенерёна автоматически программой FCEditor 1.6.117
по коду на Паскале.

код на Паскале я взял такой:
Код:
PROGRAM LETA2;

var
  year : integer;

begin
  repeat
    write('Введите ваш возраст (от 1 до 150 лет): ');
    readln(year);
  until (year > 0) and (year <= 150);

  {обработка исключении 11 12 13 14}
  if ((year mod 100)>=11) and ((year mod 100)<=14) then
      WriteLn('Мне ',year,' лет')
  else
    if (year mod 10)=1 then 
        WriteLn('Мне ',year,' год')
    else
      if ((year mod 10)>=2) and ((year mod 10)<=4) then 
        WriteLn('Мне ',year,' года')
      else
        WriteLn('Мне ',year,' лет');
end.

число mod 100 - это получить последние две цифры числа (двухзначное число равный остатку от деления на 100)

число mod 10 получить последнюю цифру числа (это остаток от деления на 10).
Serge_Bliznykov вне форума Ответить с цитированием
Старый 18.09.2019, 09:38   #5
digitalis
Старожил
 
Аватар для digitalis
 
Регистрация: 04.02.2011
Сообщений: 4,534
По умолчанию

Мой пример - универсальнее А финальную часть я бы еще укоротил.
А чтобы нарисовать блок-схему автоматом - еще Паскаль изучить надо ? Ужасть !
- Решил сварить обед. Перелистал поваренную книгу - ни одного подходящего рецепта.
- ?
- А каждый начинается так: "Возьмите чистуь кастрюлю..."
Изображения
Тип файла: jpg Let.JPG (19.6 Кб, 90 просмотров)
digitalis вне форума Ответить с цитированием
Старый 18.09.2019, 12:45   #6
Kuk29
Новичок
Джуниор
 
Регистрация: 17.09.2019
Сообщений: 3
По умолчанию

Цитата:
Сообщение от Serge_Bliznykov Посмотреть сообщение
лучше так:
Вложение 97691

блок-схема сгенерёна автоматически программой FCEditor 1.6.117
по коду на Паскале.

код на Паскале я взял такой:
Код:
PROGRAM LETA2;

var
  year : integer;

begin
  repeat
    write('Введите ваш возраст (от 1 до 150 лет): ');
    readln(year);
  until (year > 0) and (year <= 150);

  {обработка исключении 11 12 13 14}
  if ((year mod 100)>=11) and ((year mod 100)<=14) then
      WriteLn('Мне ',year,' лет')
  else
    if (year mod 10)=1 then 
        WriteLn('Мне ',year,' год')
    else
      if ((year mod 10)>=2) and ((year mod 10)<=4) then 
        WriteLn('Мне ',year,' года')
      else
        WriteLn('Мне ',year,' лет');
end.

число mod 100 - это получить последние две цифры числа (двухзначное число равный остатку от деления на 100)

число mod 10 получить последнюю цифру числа (это остаток от деления на 10).
спасибо, понял)
Kuk29 вне форума Ответить с цитированием
Ответ


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

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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Нарисовать блок-схему dimitrijiyul Помощь студентам 1 12.06.2012 15:46
Нарисовать блок-схему Megastervochka Паскаль, Turbo Pascal, PascalABC.NET 0 20.05.2012 22:36
Нарисовать блок схему Camelot_2012 Паскаль, Turbo Pascal, PascalABC.NET 0 04.05.2012 15:24
Нарисовать блок схему PascalABC Помощь студентам 5 29.01.2012 20:12
Нарисовать блок схему izi2000 Помощь студентам 3 12.02.2011 10:44