Как сделать из символов машину
Привет, как это сделать?
A=. Заменить на a каждый второй символ в слове P.
сделал, училка поставила 2 и написала:
оц 2
на слове "сссввссввсвв" дает ошибку "нет команды" после замены первой "в" на "а" , причем второй символ "с" не меняет на "а"
на слове "сссавссввсвв" меняет после "а" еще 3 символа на "а", "в" оставляет и последние 4 символа опять заменяет на "а"
программа работает совсем неправильно
В общем я накалякал.
Машина Тьюринга: заменить на "а" каждый второй символ в слове P
Существует алфавит А=. Заменить на а каждый второй символ в слове P.Слово произвольное можно.
Машина Тьюринга. Существует алфавит А=. Заменить на "а" каждый второй символ в слове P
на прологе 5.2 нужно написать : Существует алфавит А=. Заменить на а каждый второй символ в.
Машина Тьюринга: заменить каждый третий символ исходного слова на "a"
Заменить каждый третий символ на а. A=. Пусть P - не пустое конечное слово. Необходимо.
Решение
Приведите вашу программу с объяснением.
По-моему, задача очень простая. В основной части достаточно два состояния. Если бы вместо символов в правилах можно было указывать переменные, например,
(здесь x пробегает по a, b, c), то в основной части опять же достаточно двух правил.
3D Homer, а так можно или нет?
3D Homer, а не так не работает, в общем надо чтобы эта программка работала при любых условиях например у меня в строке все буквы c , т.е. сссссссссс
и надо чтобы она заменяла каждый второй символ на а не зависимо от слова P
Машина Тьюринга: оставить в слове P только последний символ (пустое слово не менять)
Помогите решить A=. Оставить в слове P только последний символ (пустое слово не менять).
Машина Тьюринга: Удалить из слова Р его второй символ, если такой есть
Машина Тьюринга 1. А=. Удалить из слова Р его второй символ, если такой есть. 2. A=.
Машина Тьюринга: Если первый и последний символ непустого слова различаются, то заменить слово пустым
Здравствуйте,помогите решить задачу. Если первый и последний символ непустого слова различаются.
Заменить каждый второй символ в строке
Нужна помощь Например имеется строка: 932932492349249342376 Требуется: Заменить все девятки из.
В строке символов заменить каждый второй символ ! на $
Нужен код на СИ Во всех заданиях предусмотреть захват и освобождение динамической памяти.
Машина Тьюринга — абстрактная вычислительная машина, предложенная Аланом Тьюрингом для формализации понятия алгоритма. Устройство МТ состоит из следующий частей:
- бесконечная лента, состоящая из ячеек
- головка для считывания/записи символов на ленте
- устройство управления
Бесконечная лента
Лента в машине Тьюринга состоит из ячеек, в которые можно записывать символы из заданного алфавита, а также считывать их. Если на ленте ничего не записано, то считается, что там записан специальный символ λ . Данный символ дополняет алфавит, но не входит в него явным образом.
Обычно на ленту в начале работы помещают входное слово. В процессе работы машины Тьюринга содержимое ленты модифицируется устройством управления и в результате на ленте остаётся выходное слово.
Считывающая/записывающая головка
В каждой машине Тьюринга есть специальная головка, указывающая на одну определённую ячейку на ленте. Данное устройство позволяет считывать символ с ячейки, над которой находится, или записывать символ в эту ячейку. Также головка может перемещаться влево и вправо на одну ячейку, или оставаться на месте.
Устройство управления
Под устройством управления понимается таблица состояний и правил перехода для машины Тьюринга. Состоянием называется строка таблицы, в которой в данный момент находится машина. Состояние, в котором находится машина перед запуском называется начальным, обычно обозначается именем q0 . Для завершения работы МТ используется специальное терминальное состояние, которое обозначается как ! .
Таблица имеет размер |Q|x|A| , где |Q| — количество состояний, а |A| — размерность алфавита (включая символ λ ). В первой (заголовочной) строке написаны символы алфавита. В каждой из ячеек таблицы, относящихся к строкам с состояниями, располагаются тройки , определяющие действие машины, которое она должна сделать, если находится в данном состоянии и на ленте записан символ из заголовочной ячейки данного столбца:
- char — символ, который нужно записать на ленту
- action — действие, которое нужно совершить после записи (одно из трёх действий: L — сдвиг влево, N — остаться на месте, R — сдвиг вправо)
- state — состояние, в которое необходимо перейти
Допускаются краткие записи для правил:
- Если необходимо выполнить только сдвиг, оставшись в том же состоянии, то достаточно записать только символ перемещения: L , N или R
- Если нужно выполнить останов, то достаточно записать !
- Если нужно записать пустой символ ( λ ), то можно поставить пробел или запятую перед символом сдвига: ,R,q0
Примеры машин Тьюринга
Пример 1 (загрузить в эмулятор). К двоичному числу прибавить 1. В начальный и конечный момент головка должна находиться на самом старшем бите слова (слева).
Q \ A | 0 | 1 | λ |
---|---|---|---|
q0 | R | R | λ L q1 |
q1 | 1 N q2 | 0 L q1 | 1 N ! |
q2 | L | L | λ R ! |
Так как изначально по условию головка МТ находится на самом старшем бите, а увеличивать надо младший, необходимо сначала переместить головку на младший бит, что выполняется в состоянии q0: как только лента увидит символ λ, она сдвинется влево (на младший бит) и перейдёт в состояние икремента (q1).
В состоянии q1 возможны следующие ситуации:
- младший бит равен 0, его нужно заменить на 1 и переместить головку на старший бит (через состояние q2)
- младший бит равен 1, его нужно заменить на 0, сдвинуться левее и остаться в этом же состоянии
- в процессе замены 1 на 0 достигнут пустой символ (было записано число из одних единиц), вместо него надо записать 1 и остановить МТ
Состояние q2 нужно лишь для выполнения условия остановки головки на старшем бите. Оно полностью аналогично начальному состоянию, только движение происходит в левюу сторону и при достижении пустого символа головка сдвигается вправо и выполняется останов.
Пример 2 (загрузить в эмулятор). В слове из алфавита инвертировать символы. В начальный момент головка находится в начале слова.
Q \ A | a | b | λ |
---|---|---|---|
q0 | b R q0 | a R q0 | ! |
До тех пор, пока под головкой не окажется пустой символ, вместо символа a записывается символ b , а вместо b записывается a и выполняется сдвиг головки вправо на очередной символ.
Programforyou — это сообщество, в котором Вы можете подтянуть свои знания по программированию, узнать, как эффективно решать те или иные задачи, а также воспользоваться нашими онлайн сервисами.
================================
➳ ღ ❥ ♥ ❢ ❦ ❧ ☜♡☞================================← ↑ → ↓ ↔ ↕ ⇐ ⇒================================<^O^>
(^.^)/
*^O^*
\,/(^_^)\,/
! d^_^b
\(^O^)/
(/.\)
(-_-)
(>_<)
(-_\\\)
(@_@)
(~.~)
)-00-(
(o_O)
(u_u)
(=_=)
*o*
-^o^-
(>^_^)> <(^_^<)
(o)_(o)
Любовь и поцелуи:
(ノ´з`)ノ я тебя обожаю
(♡μ_μ) я без тебя не могу
(♡-_-♡) интроверты тоже умеют любить
ヽ(♡‿♡)ノ иди ко мне, любовь моя
(。・//ε//・。) губки бантиком
(◡‿◡ ♡) я тебя сильно люблю
(ღ˘⌣˘ღ) мне с тобой так хорошо
♡ (´。• ω •。`) ♡ о боже, я опять влюбился по уши
(´ ▽ `).。o♡ мое сердце принадлежит тебе
╰(*´︶`*)╯♡ меня переполняет любовь
(*˘︶˘*).。.:*♡ в любви и в полнй гармонии
(≧◡≦) ты мне очень нравишься
(˘⌣˘)♡(˘⌣˘) мы любим друг-друга
(/^-^(^ ^*)/ ♡ целуемся и обнимаемся
w (゚o゚)w ヽ(゚〇゚)ノ Σ(O_O) Σ(゚ロ゚)
(⊙_⊙) (o_O) (O_O;) (O.O)(゚ロ゚) ! (o_O) ! (□_□) Σ(□_□)∑(O_O;)
m (_ _)m (シ_ _)シ m (. .)m <(_ _)>人(_ _*) (*_ _)人 m (_ _;m) (m;_ _)m (シ. .)シ
(-‸ლ) фейспалм (facepalm)
(╯°益°)╯彡┻━┻ в гневе бросает стол
(╮°-°)╮┳━━┳ (╯°□°)╯ ┻━━┻ взял стол и устроил дебош
┬─┬ノ(º _ ºノ) поставил стол на место
(͡° ͜ʖ ͡°) мем / лицо Ленни
(ಠ_ಠ) мем / взгляд неодобрения
(っ˘ڡ˘ς) вкусно поел
(x (x_(x_x (O_o)x_x)_x)x) живой среди зомби
(  ̄.)o- 【 TV 】 смотрит телевизор
`、ヽ`ヽ`、ヽ(ノ><)ノ `、ヽ`☂ヽ`、ヽ ловит зонтик под дождём
(* ̄ii ̄) кровь из носа
Погода: ☀ ☁ ☂ ☃ ☼ ☽ ☾ ❄ ☄ ★ ☆ ☾ ℃ ℉ ﻩﻩﻩ*ﻩ*ﻩ*ﻩﻩﻩ -‘๑’- ϟ ︸ Звезды: ✩ ✪ ✫ ✬ ✭ ✮ ✯ ✰ ҈ ҉ ⁂ Планеты: ♂ ♁ ♀ ☿ ♃ ♄ ♅ ♆ ♇
Узоры: √ιק √Ìþ moe .ιllιlι.ιl. ҳ̸Ҳ̸ҳ ๑۩۩๑
Смайлы: ソ ッ ヅ ツ ゾ シ ジ ټ ت ン㋛ ☺ ☹ ☻
Шахматы: ♔ ♕ ♖ ♗ ♘ ♙ ♚ ♛ ♜ ♝ ♞ ♟
Иероглифы: 牡 マ キ グ ナ ル フ ァ 系 路 克 瑞 大 阪 市 立 学 鎰 命 科 ャ マ 能 力 ϒ 人 は 妻 ス テ ィ 要 望 通 り 玉 宏 ¥ サ 丹 谷 Ѫ 灯 影 伝 鶐Знаки зодиака: ♈ ♉ ♊ ♋ ♌ ♍ ♎ ♏ ♐ ♑ ♒ ♓
================================
Современные фоторедакторы предоставляют широкие возможности по обработке и улучшению фото. Но ни одна фоторабота не может произвести такого зрительного эффекта, как ASCII-графика.
Сегодня уже немногие помнят то время, когда использование букв, цифр и других символов было едва ли не единственным способом проявить художественные способности при работе за компьютером. Собранные наподобие мозаики картины из ASCII-кодов, представляющие собой текстовые, а не графические файлы, поражали воображение и вызывали уважение к их создателям.
Обычным пользователям это казалось чем-то непосильным. Тогда вряд ли можно было себе представить, какие возможности откроются через десять лет. Но уже наступила эпоха 3D, а некоторые энтузиасты до сих пор активно развивают технику создания текстовых картин.
Конвертация фото в символы
Ascii Art Maker преобразует любое фото в набор ASCII-символов
Самый простой способ получения ASCII-картины — создать ее из уже готовой фотографии или обычной растровой иллюстрации. Для этого хорошо подходит простая в использовании программа Ascii Art Maker.
Пожалуй, главная функция этой утилиты — конвертация обычного изображения в ASCII-формат. Получаемый узор составляется из заданных или случайных символов, имеющих разные оттенки. Для того чтобы программа более точно сгенерировала рисунок, в Ascii Art Maker встроен модуль подстройки параметров исходного фото — контрастности, яркости и насыщенности. Все изменения сразу отражаются на изображении.
Программа платная: стоимость лицензии —295 рублей. В демоверсии доступны все функции, однако сохранить результат невозможно.
На все готовое
Чтобы самостоятельно создать рисунок или логотип, состоящий из произвольного набора символов, нужно обладать не только художественными способностями, но и развитым воображением. Разработчики Cool ASCII взяли этот труд на себя и собрали целую библиотеку изображений самой разной тематики, выполненных в стиле ASCII.
Cool ASCII может генерировать код и на основе изображения, однако по сравнению с предыдущей утилитой здесь много ограничений. Например, конвертировать в ASCII-узор можно только файлы BMP, а результат позволяется сохранить лишь в формате HTML. Бесплатной версии у этой программы нет — только пробная.
ASCII-палитра
ASCII Art Studio предоставляет полную свободу в выборе инструментов для создания ASCII-рисунков
Тем, кто не прочь проявить талант художника, но при этом ищет новые инструменты, можно посоветовать ASCII Art Studio.
Это полноценный редактор, предназначенный для создания всевозможной символьной графики. В программе позволяется делать почти все то же, что и в обычном графическом редакторе: рисовать линии и различные фигуры, делать заливку и т. д.
ASCII Art Studio поддерживает конвертирование файлов в форматах BMP, JPEG и GIF в символьный узор.
Стоимость утилиты довольно высока — около 900 рублей, однако предусмотрен бесплатный пробный период продолжительностью 30 дней.
Онлайновая арт-графика
Интернет стал неотъемлемым атрибутом работы на ПК, и многие программы совсем не обязательно устанавливать в штатном порядке — сетевые сервисы позволяют выполнять операции в онлайн-режиме.
Например, для любителей похвастаться продвинутой ASCII-графикой существует довольно простой ресурс ASCII-Art-Generator.
Загрузив на него фото размером до 500 кбайт, вы получите ASCII-рисунок в формате TXT. Еще один интересный ресурс — ASCII Generator позволяет облекать в симпатичное арт-исполнение различные текстовые фразы. Поддерживаются только латинские символы.
Читайте также: