В
Все
М
Математика
А
Английский язык
Х
Химия
Э
Экономика
П
Право
И
Информатика
У
Українська мова
Қ
Қазақ тiлi
О
ОБЖ
Н
Немецкий язык
Б
Беларуская мова
У
Українська література
М
Музыка
П
Психология
А
Алгебра
Л
Литература
Б
Биология
М
МХК
О
Окружающий мир
О
Обществознание
И
История
Г
Геометрия
Ф
Французский язык
Ф
Физика
Д
Другие предметы
Р
Русский язык
Г
География
xxx170
xxx170
17.02.2023 02:51 •  Информатика

. ПЛАЧУ Задача F «Геометрия 6 »

Стороны прямоугольного поля размеров 47*73 сантиметров помечены буквами A,R,Z,D. Маленький мячик B (его размерами можно пренебречь) размещен внутри этого поля в 13 сантиметрах от стороны R и в 29 сантиметрах от стороны D (см рис.3). Игрок ставит свой кий на сторону R в точке, размещенной в k сантиметрах от стороны D и прямо бьет по мячу B. Мяч продолжает движение по прямой линии и, если нужно, отражается от сторон поля. Отражение происходит по законам физики, то есть так, чтобы угол падения равнялся углу отражения. Начальный фрагмент движения мячика показан на рис. 4.
Ваша задача – написать программу, которая для данных чисел k(0<=k<=73) и n(0<=n<109) выведет расстояние от мяча до стороны R(BR) и до стороны D (BD) после того, как мяч пролетит ровно n сантиметров. Значения BR и BD должны быть выведены как вещественные числа и округлены до ближайшей тысячной сантиметра.
Примеры
ввод вывод
29 100 19.000 29.000
16 20 27.142 43.142

Показать ответ
Ответ:
ЕvilСookie
ЕvilСookie
22.12.2022 02:10
1.
var
  s: string;
  i, count: integer;
begin
  writeln('Vvedite stroky: ');
  readln(s);
  for i := 1 to length(s) - 2 do
    if copy(s, i, 3) = 'abc' then
      count := count + 1;
  writeln('Kol-vo: ', count);
end.
2.
var
  s1, s2: string;
  i, len1, len2: integer;
begin
  writeln('Vvedite stroky 1: ');
  readln(s1);
  writeln('Vvedite stroky 2: ');
  readln(s2);
  len1 := length(s1);
  len2 := length(s2);
  if len1 > len2 then writeln('1 stroka dlinnee')
  else if len1 < len2 then writeln('2 stroka dlinnee')
  else writeln('dlini strok ravnie')
end.
3.
var
  s1, s2, s3: string;
begin
  writeln('Vvedite stroky 1: ');
  readln(s1);
  writeln('Vvedite stroky 2: ');
  readln(s2);
  s3 := s1[1] + s1[2] + s2[1] + s2[2];
  writeln('Novaja stroka: ', s3);
end.
0,0(0 оценок)
Ответ:
shtoshpulodov
shtoshpulodov
22.08.2020 08:58
Function prime(x:integer):boolean;
var
 t:boolean;
 d:integer;
begin
 t := true;
 d := 2;
 while t and (d*d <= x) do
   begin
   if x mod d = 0 then 
     t := false;
   d := d + 1
   end;
 prime := t
end;

function order(x:integer):boolean;
var
 t:boolean;
 d:integer;
begin
 d := -1;
 repeat
   t := x mod 10 > d;
   d := x mod 10;
   x := x div 10
 until not t or (x = 0);
 order := t
end;

var
 t:boolean;
 i,k,n:integer;
begin
 t := false;
 read(k,n);
 for i := k to n do
   if prime(i) then
   if order(i) then
     begin
     write(i,' ');
     t := true
     end;
 if not t then
   write(0)
end.
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота