Технический форум
Вернуться   Технический форум > Программирование > Форум программистов > Delphi, Kylix and Pascal


Ответ
 
Опции темы Опции просмотра
Старый 12.11.2014, 22:40   #1 (permalink)
ПетяШ
Новичок
 
Регистрация: 12.11.2014
Сообщений: 7
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию Десятый класс, Паскаль

Заранее благодарю
Помогите написать программы для 10 класса. На паскале , они легкие, но у меня не получаются

Первая задача:
С экрана запрашивается номер месяца. В зависимости от введенного
значения на экран выводится либо сообщение о том, какому времени
года этот месяц принадлежит, либо о том, что месяца с таким номером
не существует. Каждое время года выводится своим цветом:
зима - белым, весна - зеленым, лето - красным, осень - желтым.
Сообщение о том, что месяца с таким номером не существует, - серым.


Вторя задача:
Дядя Федор, Матроскин и Шарик решали, чем должен заниматься Шарик,
пока Дядя Федор и Матроскин пойдут покупать корову.
Наконец решили кинуть жребий, но по усложненным условиям.
Каждый должен бросить кубик, на гранях которого написаны целые числа
от 1 до 6. Первым бросает Шарик, потом - Матроскин, и последним - Дядя
Федор. Из числа Шарика отнимают число Матроскина, затем к полученному
числу прибавляют число Дяди Федора.
1) Если полученное число окажется отрицательным четным числом,
то выигрывает Шарик, и "Шарик отправляется на охоту".
2) Если это число окажется простым положительным числом,
то выигрывает Матроскин, и "Шарик косит траву для коровы".
3) Если все выпавшие на кубиках числа будут различными четными,
то выигрывает Дядя Федор, и "Шарик сторожит дом".
4) А во всех остальных случаях "Шарик тоже едет покупать корову".
================================================== =====================
Постановка задачи с точки зрения программирования.
Случайным образом генерируются числа a, b и c в диапазоне от 1 до 6.
Затем получают число S, в соответствии с указанным выше правилом.
В зависимости от значения этого числа S вывести на экран соответствующее
сообщение (сообщения отмечены в тексте задания знаками " ").
Числа a, b, c и S также должны быть выведены на экран.
ПетяШ вне форума   Ответить с цитированием

Старый 12.11.2014, 22:40
Helpmaster
Member
 
Аватар для Helpmaster
 
Регистрация: 08.03.2016
Сообщений: 0

Рекомендую обратить внимание на схожие топики, это не займет много времени

Усилитель Militano для наушников класс А
TDA7294. Можно ли загнать в класс А?

Старый 12.11.2014, 22:45   #2 (permalink)
Vladimir_S
Специалист
 
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
По умолчанию

Завтра поковыряю в свободную минутку.
Цитата:
Сообщение от ПетяШ Посмотреть сообщение
Каждое время года выводится своим цветом: зима - белым, весна - зеленым, лето - красным, осень - желтым.
Ух, как я ненавижу эти CRT-шные рюшечки... Ну ладно, надо, так надо...
Vladimir_S вне форума   Ответить с цитированием
Старый 12.11.2014, 22:51   #3 (permalink)
ПетяШ
Новичок
 
Регистрация: 12.11.2014
Сообщений: 7
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию

Печаль, как раз завтра и нужно
ПетяШ вне форума   Ответить с цитированием
Старый 12.11.2014, 22:54   #4 (permalink)
Vladimir_S
Специалист
 
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
По умолчанию

Цитата:
Сообщение от ПетяШ Посмотреть сообщение
Печаль, как раз завтра и нужно
То есть Вы мне предлагаете вместо запланированного отхода ко сну засесть на ночь глядя за Ваши задачки? Извините, но... И, как я понял, завтра уже не нужно? К которому часу нужны программы?
Vladimir_S вне форума   Ответить с цитированием
Старый 12.11.2014, 22:57   #5 (permalink)
ПетяШ
Новичок
 
Регистрация: 12.11.2014
Сообщений: 7
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию

Примерно к 11-11:30
ПетяШ вне форума   Ответить с цитированием
Ads

Яндекс

Member
 
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
Старый 12.11.2014, 22:59   #6 (permalink)
Vladimir_S
Специалист
 
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
По умолчанию

Цитата:
Сообщение от ПетяШ Посмотреть сообщение
Примерно к 11-11:30
Не обещаю, но если на работе не загрузят - попробую успеть. А вообще раньше надо было, а не в последний момент. Впрочем...
Vladimir_S вне форума   Ответить с цитированием
Старый 12.11.2014, 23:01   #7 (permalink)
ПетяШ
Новичок
 
Регистрация: 12.11.2014
Сообщений: 7
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию

Я бы сделал, да сам только недавно узнал
ПетяШ вне форума   Ответить с цитированием
Старый 13.11.2014, 10:06   #8 (permalink)
Vladimir_S
Специалист
 
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
По умолчанию

Цитата:
Сообщение от ПетяШ Посмотреть сообщение
Первая задача: С экрана запрашивается номер месяца. В зависимости от введенного значения на экран выводится либо сообщение о том, какому времени года этот месяц принадлежит, либо о том, что месяца с таким номером не существует. Каждое время года выводится своим цветом: зима - белым, весна - зеленым, лето - красным, осень - желтым. Сообщение о том, что месяца с таким номером не существует, - серым.
Код:
Uses CRT;

Var
 N:Byte;

Begin
 Repeat
  Write('Enter the month number, "0" to quit: ');
  Readln(N);
  Case N of
   1,2,12:  begin
             textcolor(15);
             writeln('Winter');
             NormVideo;
            end;
   3,4,5:   begin
             textcolor(10);
             writeln('Spring');
             NormVideo;
            end;
   6,7,8:   begin
             textcolor(12);
             writeln('Summer');
             NormVideo;
            end;
   9,10,11: begin
             textcolor(14);
             writeln('Autumn');
             NormVideo;
            end;
   else writeln('No month with such number!');
  end;
 Until N=0;
End.
Vladimir_S вне форума   Ответить с цитированием
Старый 13.11.2014, 10:46   #9 (permalink)
ПетяШ
Новичок
 
Регистрация: 12.11.2014
Сообщений: 7
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию

Спасибо большое
ПетяШ вне форума   Ответить с цитированием
Старый 13.11.2014, 11:02   #10 (permalink)
Vladimir_S
Специалист
 
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
По умолчанию

Цитата:
Сообщение от ПетяШ Посмотреть сообщение
Дядя Федор, Матроскин и Шарик решали, чем должен заниматься Шарик, пока Дядя Федор и Матроскин пойдут покупать корову. Наконец решили кинуть жребий, но по усложненным условиям. Каждый должен бросить кубик, на гранях которого написаны целые числа от 1 до 6. Первым бросает Шарик, потом - Матроскин, и последним - Дядя Федор. Из числа Шарика отнимают число Матроскина, затем к полученному числу прибавляют число Дяди Федора.
1) Если полученное число окажется отрицательным четным числом, то выигрывает Шарик, и "Шарик отправляется на охоту".
2) Если это число окажется простым положительным числом, то выигрывает Матроскин, и "Шарик косит траву для коровы".
3) Если все выпавшие на кубиках числа будут различными четными, то выигрывает Дядя Федор, и "Шарик сторожит дом".
4) А во всех остальных случаях "Шарик тоже едет покупать корову".
Код:
Var
 Boy,Cat,Dog,Sum:Integer;
 YN:Char;

Function Prime(V:Integer):boolean;
var
 k:Integer;
 b:Boolean;
begin
 if (V>3) or (V<-3) then
  begin
   b:=false;
   k:=Abs(V div 2);
   Repeat
    If (V mod k)=0 then b:=Not(b);
    Dec(k);
   Until b or (k=1);
  end
  else
  if (V=2) or (V=-2) or (V=3) or (V=-3) then b:=false
  else b:=true;
 Prime:=Not(b);
end;

Begin
 Randomize;
 Repeat
  Boy:=1+Random(6);
  Cat:=1+Random(6);
  Dog:=1+Random(6);
  Sum:=Dog-Cat+Boy;
  Writeln('Boy: ',Boy:2);
  Writeln('Cat: ',Cat:2);
  Writeln('Dog: ',Dog:2);
  Writeln('Sum: ',Sum:2);
  if (Sum<0) and ((Sum mod 2)=0) then writeln('Dog wins! Dog goes hunting')
  else
  if (Sum>0) and Prime(Sum) then writeln('Cat wins! Dog mows grass for the cow')
  else
  if ((Boy mod 2)=0) and ((Cat mod 2)=0) and ((Dog mod 2)=0) and
     (Boy<>Dog) and (Boy<>Cat) and (Dog<>Cat) then
     writeln('Boy wins! Dog keeps watching over house')
  else
  writeln('Dog also goes to buy the cow');
  Writeln;
  Write('Continue (Y/N)? ');
  Readln(YN);
  Writeln;
 Until (YN='N') or (YN='n');
End.
Vladimir_S вне форума   Ответить с цитированием
Ads

Яндекс

Member
 
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
Ответ


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Выкл.
HTML код Выкл.
Trackbacks are Вкл.
Pingbacks are Вкл.
Refbacks are Выкл.




Часовой пояс GMT +4, время: 03:54.

Powered by vBulletin® Version 6.2.5.
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.