Перевод чисел в слова
Перевод чисел в слова
Помогите создать программу,в которой ты пишешь числа цифрами, а выводит число словами. например.
Перевод чисел в слова
Создать проект Delphi7 «Перевод чисел в слова», выполняющий перевод десятичного числа от 100 до 999.
Найти слова, состоящие из цифр, и сумму чисел, которые образуют эти слова
• Дана строка. Найти слова, состоящие из цифр, и сумму чисел, которые образуют эти слова.
Перевод чисел в двоичную систему счисления, сложение чисел в двоичной системе
Задание 7 Задания к работе 1. Перевести данное число из десятичной системы счисления в двоичную.
У меня в ФриПаскале прикомпиляции любой программы одна и та же ошибка http://clip2net точка com/s/2SUgs
Добавлено через 8 минут
PascalABC.NET пишет «Program1.pas(20) : Нельзя преобразовать тип function(var a: integer): string к string»
Как-то странно,что FPC не отреагировал,но раз пошло,хорошо.
Добавлено через 29 минут
Значит так,я исправил код,там я кое-что упустил,бери доработанный,только-что сам заметил недочеты своей проги.
Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.
Перевод массива вводимых чисел в массив чисел в другой системе счисления
Доброго времени суток, предлагается оказать помощь студенту новичку) Есть пример реализации этого в.
Перевод списка арабских чисел в список соответствующих им римских чисел
Создайте предикат, переводящий список арабских чисел в список соответствующих им римских чисел
Перевод чисел в дополнительный код и сложение (вычитание) этих чисел в однобайтовом формате
Даны два числа Х и У в двоичной системе счисления. Нужно написать программу, которая переводила.
Дан текст, найти слова, состоящие из цифр, и сумму чисел, которые образуют эти слова
Дан текст. Найти слова, состоящие из цифр, и сумму чисел, которые образуют эти слова. Помогите.
Найти слова, состоящие из цифр, и сумму чисел, которые образуют эти слова через string
Дан текст. Найти слова, состоящие из цифр, и сумму чисел, которые образуют эти слова. Текст надо.
Найти слова в заданном тексте, состоящие из цифр и сумму чисел, которые образуют эти слова
Помогите разобраться пожалуйста: 1. Дан текст. Найти слова, состоящие из цифр и сумму чисел.
Преобразование даты в числовой формат
Задача
Условие и цель задачи. Пользователь вводит дату в формате ‘dd.mm.yyyy’, которая присваивается строчной переменной s. Необходимо преобразовать строку в запись d, имеющую три числовых поля – day, month, year.
Решение
Алгоритм решения задачи:
Алгоритмы преобразования строчного представления даты в численное могут использоваться в программах, которые выполняют какие-либо вычисления, связанные с датами.
Мы не будем писать сразу наиболее эффективную и короткую программу. Сначала алгоритм решения будет достаточно прозрачным и простым.
Программа на языке Паскаль:
Алгоритм 1. Линейная программа
Введенная пользователем дата находится в строчной переменной s.
Извлечение любого символа из строки производится так же, как получение элемента массива по его индексу. Например, s[1] приведет к извлечению первого символа сроки. Можно даже извлечь срез: s[1..2] извлечет первые два символа. Однако как их преобразовать в число?
Функция ord возвращает порядковый номер переданного ей аргумента. Если ей передать символ, то она вернет его номер в таблице символов. Это будет величина целого типа. Например, символ ‘0’ (ноль) может быть 48-м. Поэтому ord(‘0’) вернет 48. Далее номера цифр идут по порядку друг за другом: ‘1’ – 49, ‘2’ – 50, ‘3’ – 51 и т.д.
Чтобы перевести символьное представление цифры (например, ‘7’) в число (7), достаточно выполнить такое выражение: ord(‘7’) – ord(‘0’). Разница номеров между данными символами как раз составляет семь единиц. Таким образом, мы можем перевести символьное представление цифры в число.
Следующая проблема заключается в том, что числа в дате двузначные (день и месяц) и четырехзначные (год). Мы же получили значение только отдельных цифр. Однако, имея цифры и зная их позицию в числе, нетрудно вычислить само число. Например, если первое число 2 (десятки), а второе 4 (единицы), то получить 24 легко: 2 * 10 + 4. Год wxyz вычисляется по формуле w * 1000 + x * 100 + y * 10 + z.
Кроме того, следует не забыть пропустить точки в строке даты. Это символы под номерами 3 и 6. Они никакого участия в вычислениях принимать не должны.
Алгоритм 2. Использование цикла и массива
Как можно заметить, слишком много раз в предыдущей программе выполняется выражениеord(s[цифра])-ord(‘0’). Подобные действия лучше выполнять в цикле, а результат помещать не в переменные, а массив.
Требуется преобразовать в цикле все символы строки, за исключением 3-го и 6-го (тех, которые являются точкой), и заполнить массив.
Алгоритм 2. Быстрое решение
На самом деле не обязательно использовать массив, цикл и даже лишние переменные. Все делается гораздо проще, однако выражения получаются достаточно длинными и могут быть непонятны для начинающих.
Pascal-Паскаль
Программирование. Строки и символы Pascal-Паскаль
Программирование. Строки и символы Pascal-Паскаль
Строки Pascal-Паскаль
Строка представляет собой особую форму одномерного массива символов, которая имеет существенное отличие. Массив символов имеет фиксированную длину (количество элементов), которая определяется при описании. Строка имеет две разновидности длины:
Строка в Паскале – упорядоченная последовательность символов. Количество символов в строке называется ее длиной. Длина строки в Паскале может лежать в диапазоне от 0 до 255. Каждый символ строковой величины занимает 1 байт памяти и имеет числовой код в соответствии с таблицей кодов ASCII.
Код ASCII (American Code for Information Interchange – Американский стандартный код для обмена информацией) имеет основной стандарт и его расширение. Основной стандарт использует шестнадцатеричные коды 00-7F, расширение стандарта – 80-FF. Основной стандарт является международным и используется для кодирования управляющих символов, цифр и букв латинского алфавита; в расширении стандарта используются символы псевдографики и буквы национальных алфавитов.
Строковая константа Паскаля – последовательность символов, заключенная в апострофы. Например, ‘строковая константа’, ‘243’. Два следующих друг за другом апострофа (») обозначают пустую строку, т.е. строку с нулевой длиной.
Описание строковой переменной Паскаля
Для описания строковых переменных в Паскале существует предопределенный тип string.
В общем виде описание строковой переменной будет выглядеть следующим образом:
Пример описания строковой переменной в Паскале:
В приведенном выше описании строковая переменная s1 может содержать не более 10 символов, переменная s2 – не более 20 символов. Если же при описании строки ее максимальная длина не указывается, то по умолчанию принимается максимально допустимая длина, равная 255 символам (переменная smax)..
Символы в строке упорядочены, каждый из них имеет порядковый номер, начиная с первого. Имеется возможность обратиться к любому элементу строки, указав его номер, так же как это делается в одномерных массивах. Например, s1[2] позволяет обратиться ко второму символу в строке s1, при этом мы можем поменять это значение, выполнив оператор присваивания s1[2]:= ‘r’, можем вывести на экран это значение или присвоить его другой переменной.
Действия со строками в Паскале
Операция слияния (сцепления, конкатенации) применяется для соединения нескольких строк в одну, обозначается знаком «+». Операция слияния применима для любых строковых выражений, как констант, так и переменных.
Операции отношения позволяют сравнивать строки на отношение равенства (=), неравенства (<>), больше (>), меньше ( =), меньше или равно ( Пример действий со строками в Паскале:
‘строка’<>‘строки’ (верно, т.к. не совпадают последние символы);
‘Abc’ ‘век’ (отношение верно, т.к. буква ‘г’ в алфавите стоит после буквы ‘в’, а, следовательно, имеет больший код).
Стандартные функции для работы со строками в Паскале
Copy (S, poz, n) выделяет из строки S, начиная с позиции poz, подстроку из n символов. Здесь S – любое строковое выражение, poz, n – целочисленные выражения.
Значение S | Выражение | Результат |
‘строка символов’ | Copy(S,3,3) | рок |
Concat (s1, s2. sn) выполняет слияние строк s1, s2. sn в одну строку.
Выражение | Результат |
Concat(‘язык’, », ‘Pascal’) | ‘язык Pascal’ |
Length(S) определяет текущую длину строкового выражения S. Результат – значение целого типа.
Значение S | Выражение | Результат |
‘(а+в)*с’ | Length(s) | 7 |
Pos(subS, S) определяет позицию первого вхождения подстроки subS в строку S. Результат – целое число, равное номеру позиции, где находится первый символ искомой подстроки. Если вхождение подстроки не обнаружено, то результат функции будет равен 0.
Значение S | Выражение | Результат |
‘предложение’ | Pos(‘е’, S) | 3 |
‘предложение’ | Pos(‘a’, S) | 0 |
Стандартные процедуры для работы со строками в Паскале
Delete (S, poz, n) удаляет из строки S, начиная с позиции poz, подстроку из n символов. Здесь S – строковая переменная (в данном случае нельзя записать никакое другое строковое выражение, кроме имени строковой переменной, т.к. только с именем переменной связана область памяти, куда будет помещен результат выполнения процедуры); poz, n – любые целочисленные выражения.
Исходное значение S | Оператор процедуры | Конечное зн-е S |
‘abcdefg’ | Delete(s, 2, 3) | ‘aefg’ |
Insert(subS, S, poz) вставляет в строку S, начиная с позиции poz, подстроку subS. Здесь subS – любое строковое выражение, S – строковая переменная (именно ей будет присвоен результат выполнения процедуры), poz – целочисленное выражение.
Исходное значение S | Оператор процедуры | Конечное зн-е S |
‘рис. 2’ | Insert(‘№’, S, 6) | ‘рис. №2’ |
Процедуры преобразования типов в Паскале
Str(x, S) преобразует число x в строковый формат. Здесь x – любое числовое выражение, S – строковая переменная. В процедуре есть возможность задавать формат числа x. Например, str(x: 8: 3, S), где 8 – общее число знаков в числе x, а 3 – число знаков после запятой.
Оператор процедуры | Значение S |
Str (sin(1):6:4, S) | ‘0.0175’ |
Str (3456, S) | ‘3456’ |
Val(S, x, kod) преобразует строку символов S в число x. Здесь S – строковое выражение, x – числовая переменная (именно туда будет помещен результат), kod – целочисленная переменная (типа integer), которая равна номеру позиции в строке S, начиная с которой произошла ошибка преобразования, если преобразование прошло без ошибок, то переменная kod равна 0.
Тип X | Оператор процедуры | Значение X | Значение kod |
Real | Val(‘12.34’, x, kod) | 12.34 | 0 |
Integer | Val(‘12.34’, x, kod) | 12 | 3 |
Программирование
Исходники Pascal (127)
Справочник
Справочник по паскалю: директивы, функции, процедуры, операторы и модули по алфавиту