Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 26.02.2017, 18:49   #1
avatar54
Пользователь
 
Регистрация: 21.02.2017
Сообщений: 29
По умолчанию Расшифровать ребус, полученный в результате замены одинаковых букв одинаковыми цифрами. Free pascal.

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

КОТ+КОТ+КОТ+КОТ=УСЫ

Что бы получилось аналогично как в этом примере: (шлак+шлак+шлак=блок)


Код:
CONST D=10;
  TYPE CIPFER=0..9;
  VAR A,P2,P4,PR,O,L,L1,S,FLAG: CIPFER;
      K,P1,P3,B,SLAK,BLOK: INTEGER;
BEGIN
 K:=0; FLAG:=0;
 REPEAT
  PR:=K*3 DIV D;
  FOR A:=0 TO 9 DO
   IF A<>K THEN
    BEGIN
     P1:=A*3+PR; P2:=P1 DIV D; O:=P1 MOD D;
     IF(O<>A) AND (O<>K) THEN
       FOR L:=0 TO 9 DO
        IF (L<>O) AND (L<>A) AND (L<>K) THEN
         BEGIN
          P3:=L*3+P2; P4:=P3 DIV D; L1:=P3 MOD D;
          IF L1=L THEN
           FOR S:=1 TO 3 DO
            IF (S<>L) AND (S<>A) AND (S<>O) AND (S<>K) THEN
             BEGIN
              B:=S*3+P4;
              IF(B<D)AND(B<>L)AND(B<>A)AND(B<>O)AND(B<>K) THEN
                BEGIN SLAK:=S*1000+L*100+A*D+K;
                      BLOK:=B*1000+L*100+O*D+K;
                      WRITE (SLAK:5,'*3=',BLOK:5,'  ');
                      INC(FLAG);
                      IF FLAG>3 THEN
                       BEGIN WRITELN; FLAG:=0
                       END;
                END;
             END;
     END;
    END;
    K:=K+5
 UNTIL K>5
END.
avatar54 вне форума
Старый 26.02.2017, 19:20   #2
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

кросспост
http://www.programmersforum.ru/showthread.php?t=304462
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума
Закрытая тема


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Ребус. Free pascal avatar54 Помощь студентам 1 21.02.2017 19:01
Расшифровать ребус, паскаль IIo3uTuB Помощь студентам 13 20.02.2017 21:35
Расшифровать ребус, полученный в результате замены одинаковых букв ZigaBr0 Паскаль, Turbo Pascal, PascalABC.NET 2 30.08.2016 10:07
Расшифровать ребус, полученный в результате замены одинаковых букв одинаковыми цифрами. Найти также такие значения цифр, при котор ZigaBr0 Паскаль, Turbo Pascal, PascalABC.NET 3 19.02.2016 17:59
Более двух одинаковых букв в слове (pascal) sharamamburum Помощь студентам 10 19.12.2014 23:12