Вопрос задан 15.02.2019 в 22:22. Предмет Информатика. Спрашивает Ни Данил.

75 БАЛЛОВ! Помогите, пожалуйста, как можно решить эту задачу в Pascal ABC с использованием while /

repeat ? Замените буквы цифрами так, чтобы соотношение оказалось верным (одинаковым буквам соответствуют одинаковые цифры, разным-разные) ХРУСТ*ГРОХОТ=РРРРРРРРРРР
0 0
Перейти к ответам

Ответы на вопрос

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Николаева Дарья.
Var a,b,c: int64;
    i,j,k,n,m,r,p,s: integer;
begin
  for i:=1 to 9 do    // буква х
  for j:=1 to 9 do    // буква г
  for k:=1 to 9 do    // буква т
  for n:=0 to 9 do    // буква о
  for m:=0 to 9 do    // буква с
  for r:=0 to 9 do    // буква у
  begin
    p:=k*k mod 10;
    a:=i*10000+p*1000+r*100+m*10+k;
    b:=j*100000+p*10000+n*1000+i*100+n*10+k;
    c:=p;
    for s:=1 to 10 do c:=c*10+p;
    if a*b=c then
    begin
      writeln('хруст = ',a);
      writeln('грохот = ',b);
      writeln('ррррррррррр = ',c);
    end;  
  end;
end.

хруст = 21649
грохот = 513239
ррррррррррр = 11111111111

0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Для решения данной задачи в Pascal ABC с использованием циклов `while` или `repeat` можно применить следующий алгоритм:

1. Создайте переменные для каждой буквы и цифры, которую она представляет. Начальные значения переменных можно установить в диапазоне от 0 до 9.

2. Используя цикл `repeat` или `while`, перебирайте все возможные комбинации цифр для букв. Начните с первой комбинации, где каждая буква представлена цифрой 0.

3. Внутри цикла проверьте, является ли соотношение `ХРУСТ * ГРОХОТ = РРРРРРРРРРР` верным для текущей комбинации цифр. Если соотношение верно, выведите найденную комбинацию цифр.

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

Вот пример кода на Pascal ABC, реализующего описанный алгоритм:

```pascal program SolveEquation;

var Х, Р, У, С, Т, Г, Р1, О, Х1, О1, Т1: Integer;

begin Х := 0; Р := 0; У := 0; С := 0; Т := 0; Г := 0; Р1 := 0; О := 0; Х1 := 0; О1 := 0; Т1 := 0;

repeat repeat repeat repeat repeat repeat repeat repeat repeat repeat repeat repeat if (Х * 100000 + Р * 10000 + У * 1000 + С * 100 + Т * 10 + Г) * (Г * 100000 + Р1 * 10000 + О * 1000 + Х1 * 100 + О1 * 10 + Т1) = Р1 * 1000000000000000000 + Р1 * 100000000000000000 + Р1 * 10000000000000000 + Р1 * 1000000000000000 + Р1 * 100000000000000 + Р1 * 10000000000000 + Р1 * 1000000000000 + Р1 * 100000000000 + Р1 * 10000000000 + Р1 * 1000000000 + Р1 * 100000000 + Р1 * 10000000 + Р1 * 1000000 + Р1 * 100000 + Р1 * 10000 + Р1 * 1000 + Р1 * 100 + Р1 * 10 + Р1 then writeln('Найдено верное соотношение: Х=', Х, ', Р=', Р, ', У=', У, ', С=', С, ', Т=', Т, ', Г=', Г, ', Р1=', Р1, ', О=', О, ', Х1=', Х1, ', О1=', О1, ', Т1=', Т1); Т1 := Т1 + 1; until Т1 = 10; О1 := О1 + 1; Т1 := 0; until О1 = 10; Х1 := Х1 + 1; О1 := 0; until Х1 = 10; О := О + 1; Х1 := 0; until О = 10; Р1 := Р1 + 1; О := 0; until Р1 = 10; Г := Г + 1; Р1 := 0; until Г = 10; Т := Т + 1; Г := 0; until Т = 10; С := С + 1; Т := 0; until С = 10; У := У + 1; С := 0; until У = 10; Р := Р + 1; У := 0; until Р = 10; Х := Х + 1; Р := 0; until Х = 10; until false; end. ```

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

0 0

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос