Определить, является ли трамвайный билет счастливым? Счастливым будем считать такое число из шести цифр,...

Тематика Информатика
Уровень 10 - 11 классы
счастливый билет трамвайный билет шесть цифр проверка билета язык программирования Паскаль алгоритм сумма цифр
0

Определить, является ли трамвайный билет счастливым? Счастливым будем считать такое число из шести цифр, в котором сумма левых трех цифр равна сумме правых трех цифр. паскаль

avatar
задан месяц назад

3 Ответа

0

Для определения является ли трамвайный билет счастливым, нужно сравнить сумму левых трех цифр с суммой правых трех цифр. Если они равны, то билет считается счастливым, иначе - несчастливым.

Для этого можно использовать следующий алгоритм на языке программирования Паскаль:

program LuckyTicket;

var
  ticket, leftSum, rightSum, i: integer;

begin
  write('Введите номер трамвайного билета (6 цифр): ');
  readln(ticket);

  leftSum := 0;
  rightSum := 0;

  for i := 1 to 3 do
  begin
    leftSum := leftSum + ticket mod 10;
    ticket := ticket div 10;
  end;

  for i := 1 to 3 do
  begin
    rightSum := rightSum + ticket mod 10;
    ticket := ticket div 10;
  end;

  if leftSum = rightSum then
    writeln('Трамвайный билет счастливый!')
  else
    writeln('Трамвайный билет несчастливый.');
end.

Этот код сначала запрашивает у пользователя номер трамвайного билета, затем считает сумму левых трех цифр и правых трех цифр. После этого происходит сравнение сумм, и выводится соответствующее сообщение о том, является ли билет счастливым или нет.

avatar
ответил месяц назад
0

Трамвайный билет счастливым будет, если сумма левых трех цифр равна сумме правых трех цифр.

avatar
ответил месяц назад
0

Для определения, является ли трамвайный билет счастливым, нам необходимо проверить, равна ли сумма первых трёх цифр номера билета сумме последних трёх цифр. Если это условие выполняется, билет считается счастливым.

Давайте рассмотрим, как можно реализовать эту задачу на языке программирования Pascal.

  1. Ввод данных: Предположим, что номер билета представлен в виде строки, содержащей ровно шесть символов. Это важно, поскольку номера могут начинаться с нуля, и работа с ними в строковом виде упрощает доступ к отдельным цифрам.

  2. Преобразование и вычисление суммы: Нам нужно извлечь каждую цифру и преобразовать её в числовое значение, после чего можем вычислить суммы для первых трёх и последних трёх цифр.

  3. Сравнение сумм: После вычисления сумм сравниваем их. Если они равны, билет счастливый.

Вот пример реализации этой логики на языке Pascal:

program LuckyTicket;

uses SysUtils;

function IsLuckyTicket(ticket: string): boolean;
var
  firstHalfSum, secondHalfSum, i: integer;
begin
  firstHalfSum := 0;
  secondHalfSum := 0;

  // Проверка, что билет имеет ровно 6 цифр
  if Length(ticket)  6 then
  begin
    writeln('Номер билета должен содержать ровно 6 цифр.');
    exit(false);
  end;

  // Вычисление суммы первых трех цифр
  for i := 1 to 3 do
    firstHalfSum := firstHalfSum + StrToInt(ticket[i]);

  // Вычисление суммы последних трех цифр
  for i := 4 to 6 do
    secondHalfSum := secondHalfSum + StrToInt(ticket[i]);

  // Проверка на равенство сумм
  if firstHalfSum = secondHalfSum then
    exit(true)
  else
    exit(false);
end;

var
  ticketNumber: string;
begin
  writeln('Введите номер билета (6 цифр):');
  readln(ticketNumber);

  if IsLuckyTicket(ticketNumber) then
    writeln('Билет счастливый!')
  else
    writeln('Билет не является счастливым.');
end.

Пояснения:

  • Мы используем функцию IsLuckyTicket, которая принимает строку ticket и возвращает логическое значение boolean, указывающее, является ли билет счастливым.
  • Функция проверяет длину строки, чтобы удостовериться, что она состоит из шести символов.
  • С помощью циклов for мы суммируем значения первых трёх и последних трёх цифр.
  • Функция StrToInt используется для преобразования символов в целые числа.
  • Основная программа запрашивает у пользователя ввод номера билета и выводит результат проверки.

Этот подход позволяет легко проверить, является ли конкретный номер билета счастливым.

avatar
ответил месяц назад

Ваш ответ

Вопросы по теме