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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 24.01.2014, 22:25   #1
Ruqeyye
Пользователь
 
Регистрация: 08.01.2014
Сообщений: 14
По умолчанию Задача в паскале: Сформировать множество, в которое входят только цифры, встретившиеся во входной строке

Я не поняла задачу, объясните мне ее, если вам несложно.

Сформировать множество, в которое входят только цифры, встретившиеся во входной строке.

Что значит "встретившиеся во входной строке"?
Ruqeyye вне форума Ответить с цитированием
Старый 24.01.2014, 22:29   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Это значит ты через readln() вводишь в переменку string.
А потом в множество типа set '0'..'9' добавляешь только те символы, что представляют собой цифры.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 24.01.2014, 22:30   #3
Ruqeyye
Пользователь
 
Регистрация: 08.01.2014
Сообщений: 14
По умолчанию

спасибо, сейчас попробую
Ruqeyye вне форума Ответить с цитированием
Старый 24.01.2014, 22:31   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Это значит ты через readln() вводишь в переменку string.
А потом в множество типа set '0'..'9' добавляешь только те символы, что представляют собой цифры.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 24.01.2014, 22:41   #5
Ruqeyye
Пользователь
 
Регистрация: 08.01.2014
Сообщений: 14
По умолчанию

Код:
program mnozhestvo;
type mn = set of char;
var s: string;
  m: mn;
i: integer;
begin
  m:=['0'..'9'];
  write('Введите строку: ');
  readln(s);
  for i:=1 to length(s) do
    if s[i] in m then write (s[i]:2)
end.
Если вам несложно, проверьте, правильно ли написала? Заранее благодарю.
Ruqeyye вне форума Ответить с цитированием
Старый 24.01.2014, 22:49   #6
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

думаю, что нет.

нужно составить множество только из тех цифр, которые входят в строку.

я бы написал это примерно так:
Код:
program mnoz;
type mn = set of char;
var 
  s: string;
  m: mn;
  i: integer;
  ch : char;
begin
  m:=[];
  write('Введите строку: ');
  readln(s);
  for i:=1 to length(s) do
    if s[i] in ['0'..'9'] then Include(m, s[i]);

  {вывод содержимого множества m}
  for ch:='0' to '9' do
    if ch in m then  Write(ch,' ');
  WriteLn
end.
Serge_Bliznykov вне форума Ответить с цитированием
Старый 24.01.2014, 22:52   #7
Ruqeyye
Пользователь
 
Регистрация: 08.01.2014
Сообщений: 14
По умолчанию

спасибо огромное! разобралась
Ruqeyye вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
В заданный непустой текст входят только цифры и буквы. Длина текста не более 12 символов. Определить, удовлетворяется ли следующе Dissko Помощь студентам 2 01.12.2014 12:05
сформировать множество LB, в которое входят только большие латинские буквы программирование Паскаль, Turbo Pascal, PascalABC.NET 2 23.04.2013 22:45
Множество.Верно ли, что в записи первого числа используються только цифры, содержащиеся во втором числе? MElvira Паскаль, Turbo Pascal, PascalABC.NET 9 20.02.2013 14:52