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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 27.01.2023, 12:44   #1
Alisa15
Пользователь
 
Регистрация: 28.09.2022
Сообщений: 19
По умолчанию Решить задачу на языке паскаль

Здравствуйте,можете пожалуйста написать код на языке паскаля,нужно до завтра.

"Поле чудес". Слово задано в виде шаблона, т. е. известна его длина и некоторые
буквы. При этом тех букв, которые уже открыты, в слове больше нет. Разработать
программу, подбирающую для заданного шаблона соответствующие слова. Основой для
подбора может база данных слов в виде массива или файла.
Alisa15 вне форума Ответить с цитированием
Старый 27.01.2023, 13:32   #2
Valick
Форумчанин
 
Регистрация: 27.04.2022
Сообщений: 491
По умолчанию

Цитата:
Сообщение от Alisa15 Посмотреть сообщение
написать код на языке паскаля,нужно до завтра
приходите недели две назад
Valick вне форума Ответить с цитированием
Старый 27.01.2023, 14:01   #3
macomics
Участник клуба
 
Регистрация: 17.04.2022
Сообщений: 1,833
По умолчанию

Код:
program dvoika;

uses SysUtils;

type charset = set of Char;

var
  move: LongInt = 0;
  word: String = '';
  cset: charset = [];

function SelectWord(szFileName: String; var szWord: String; var chSet: charset): Boolean;
var
   F: TextFile;
   C: LongInt;
   W: String;
   R: Boolean;
begin
   C := 0;
   R := false;
   Assign(F, szFileName);
   if not FileExists(szFileName) then exit;
   Reset(F);
   while not eof(F) do begin
      ReadLn(F, W);
      inc(C);
   end;
   Close(F);
   C := Random(C) + 1;
   Reset(F);
   repeat
      ReadLn(F, W);
      dec(C);
   until C <= 0;
   Close(F);
   R := true;
   szWord := W;
   for C := 1 to Length(W) do
   Include(chSet, W[C]);
   SelectWord := R;
end;

procedure MovePatternWord(var csHidden: charset; szWord: String);
var
   i: LongInt;
   p: String;
   c: Char;
begin
   SetLength(p, Length(szWord));
   for i := 1 to Length(szWord) do
      if szWord[i] in csHidden then
         p[i] := '_' else p[i] := szWord[i];
   WriteLn('Word: ', p, ' Type char: ');
   ReadLn(c);
   Exclude(csHidden, c);
end;

BEGIN
   Randomize;
   if SelectWord('words.txt', word, cset) then repeat
      inc(move);
      MovePatternWord(cset, word);
   until cset = [];
   WriteLn('Happy end! You did it in ', move, ' tries');
END.
words.txt
Код:
abracadabra
apple
banana
cucumber
orange
pineapple
tomato
macomics вне форума Ответить с цитированием
Старый 27.01.2023, 18:00   #4
Alisa15
Пользователь
 
Регистрация: 28.09.2022
Сообщений: 19
По умолчанию

macomics, спасибо большое
Alisa15 вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
решить задачу на муравьиную стратегию (на любом языке) Alisa15 Помощь студентам 21 25.01.2023 13:05
помогите решить задачу на массивы на языке ассемблере Berik10 Помощь студентам 1 15.10.2017 16:44
Не получается решить задачу на языке С++ sarexer Помощь студентам 6 22.09.2016 15:34
Решить задачу на языке OCCAM V_F Фриланс 0 22.05.2012 12:11