М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
leylaevloeva
leylaevloeva
12.10.2021 09:12 •  Информатика

Для вводимых с клавиатуры чисел определить количество четных чисел и сумму нечетных чисел. ввод чисел прекращается, когда пользователь вводит цифру 0.

👇
Ответ:
LaiZyHero
LaiZyHero
12.10.2021
Program forZnania;
var x,a,b:integer;
begin
a:=0;
b:=0;
repeat 
readln(x); 
if x mod 2=0 then a:=a+1 else b:=b+x
until x=0;
a:=a-1;
writeln('Количество четных чисел: ',a);
writeln('Сумма нечетных чисел: ',b);
end.

Наверное Вы удивитесь почему после цикла стоит 'a:=a-1'?
Поясняю: когда Вы вводите последнее число 0, то программа воспринимает его за четное число и приписывает его к кол-ву четных чисел, поэто уменьшаем кол-во чет чисел на одно.
4,4(7 оценок)
Открыть все ответы
Ответ:
utochkins04
utochkins04
12.10.2021
Type
  Point = record
    x: integer;
    y: integer;
  end;
  Line = record
    P: Point;
    Q: Point;
    Len: double;
  end;

procedure LineLength(var pL: Line);
  // Вычисляет и сохраняет значение длины отрезка
begin
  pL.Len := sqrt(sqr(pL.Q.x - pL.P.x) + sqr(pL.Q.y - pL.P.y))
end;

var
  A, B, C, D: Point;
  AB, AC, AD, BC, BD, CD: Line;

begin
  writeln('Введите попарно координаты четырех точек');
  readln(A.x, A.y, B.x, B.y, C.x, C.y, D.x, D.y);
  with AB do
  begin
    P.x := A.x; P.y := A.y; Q.x := B.x; Q.y := B.y; LineLength(AB);
  end;
  with AC do
  begin
    P.x := A.x; P.y := A.y; Q.x := C.x; Q.y := C.y; LineLength(AC);
  end;
  with AD do
  begin
    P.x := A.x; P.y := A.y; Q.x := D.x; Q.y := D.y; LineLength(AD);
  end;
  with BC do
  begin
    P.x := B.x; P.y := B.y; Q.x := C.x; Q.y := C.y; LineLength(BC);
  end;
  with BD do
  begin
    P.x := B.x; P.y := B.y; Q.x := D.x; Q.y := D.y; LineLength(BD);
  end;
  with CD do
  begin
    P.x := C.x; P.y := C.y; Q.x := D.x; Q.y := D.y; LineLength(CD);
  end;
  writeln(AB.Len, ' ', AC.Len, ' ', AD.Len, ' ', BC.Len, ' ', BD.Len, ' ', CD.Len);
  if AB.Len = CD.Len then begin
    // AB и CD - претенденты
    if AC.Len = BD.Len then // Нашли ABDC
      writeln('Параллелограмм ABDC')
    else
    if AD.Len = BC.Len then // Нашли ABCD
      writeln('Параллелограмм ABCD')
  end
  else
  if AC.Len = BD.Len then begin
      // AC и BD - претенденты
    if AD.Len = BC.Len then // Нашли ACBD
      writeln('Параллелограмм ACBD')
      else
    if AB.Len = CD.Len then // Нашли ABCD
      writeln('Параллелограмм ACDB')
  end
    else
  if AD.Len = BC.Len then begin
        // AD и ВС - претенденты
    if AC.Len = BD.Len then // Нашли ADBC
      writeln('Параллелограмм ADBC')
        else
    if AB.Len = CD.Len then // Нашли ADCB
      writeln('Параллелограмм ADCB')
  end
  else
    writeln('Параллелограмм построить невозможно');
end.

Контрольный прогон:

Введите попарно координаты четырех точек
5 1 10 3 8 9 3 6
5.3851648071345 8.54400374531753 5.3851648071345 6.32455532033676 7.61577310586391 5.8309518948453
Параллелограмм построить невозможно

Введите попарно координаты четырех точек
5 1 10 4 8 9 3 6
5.8309518948453 8.54400374531753 5.3851648071345 5.3851648071345 7.28010988928052 5.8309518948453
Параллелограмм ABCD

Введите попарно координаты четырех точек
5 1 8 9 10 4 3 6
8.54400374531753 5.8309518948453 5.3851648071345 5.3851648071345 5.8309518948453 7.28010988928052
Параллелограмм ACBD
4,5(86 оценок)
Ответ:
w11Maxim11w
w11Maxim11w
12.10.2021
Const
  T = '';
  n = 66;//  Количество символов в Т

var
  s,buf: string;
  P: array[1..n] of integer;
  i, k: integer;
  F: Text;

begin
  Assign(F, 'CharCount.txt');
  Reset(F);
  s:='';
  while not SeekEof(F) do begin
    Read(F,buf);
    s:=s+buf
  end;
  Writeln(s);
  for i := 1 to n do P[i] := 0;
  for i := 1 to length(s) do
  begin
    k := Pos(s[i], T);
    if k > 0 then P[k] := P[k] + 1
  end;
  for i := 1 to n do
    if P[i] > 0 then writeln(T[i], ' - ', P[i]:3)
end.

Тестовый пример:
Ксаверий Феофалактович Грушин, следственный пристав Сыскного управления при московском обер-полицмейстере,облегченно вздохнул и отложил влево, в стопку "просмотрено", сводку важных преступлений за вчерашний день
Г -   1
К -   1
С -   1
Ф -   1
а -   8
б -   2
в -  13
г -   2
д -   4
е -  17
ж -   2
х -   2
и -  11
й -   5
к -   6
л -  10
м -   4
н -  13
о -  20
п -   8
р -  11
с -  12
т -   8
у -   6
ф -   1
ц -   1
ч -   3
ш -   2
ы -   3
ь -   1
я -   1
4,7(66 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ