Строки |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
Строки |
SeRGuS |
20.12.2004 14:00
Сообщение
#1
|
Новичок Группа: Пользователи Сообщений: 11 Пол: Мужской Репутация: 0 |
Напишите программу с использованием строк, если можно то с объеснением данной программы:
Дана строка. Подсчитать число вхождений буквы f в первые три группы букв, в группе должны быть только буквы, группы разделить пробелами. |
APAL |
20.12.2004 14:14
Сообщение
#2
|
Смотрю... Группа: Модераторы Сообщений: 1 055 Пол: Мужской Реальное имя: Пшеничный Алексей Анатольевич Репутация: 6 |
Забавная формулировка.... сначала подсчитать вхождения в группы, а потом оказывается групп то и нету - их надо еще разделить пробелами.... забавно.
-------------------- |
xds |
20.12.2004 17:49
Сообщение
#3
|
N337 Группа: Пользователи Сообщений: 737 Пол: Мужской Репутация: 26 |
...поскольку заведомо существует одна группа, то задача может быть сведена к подсчету количества символов "f" во всей строке (-;
-------------------- The idiots are winning.
|
SeRGuS |
20.12.2004 20:00
Сообщение
#4
|
Новичок Группа: Пользователи Сообщений: 11 Пол: Мужской Репутация: 0 |
Кто может напишите программу, а то я с задачами над строками не дружу !!
Если непонятна формулировка то должен ввести следующие: safuiffywqjh (n-ое кол-во символов) и вывести на экран : saf uif fyw qjh кол-во вх символа f в первые три гр=3 Заранее всем спасибо ! |
volvo |
20.12.2004 22:23
Сообщение
#5
|
Гость |
SeRGuS
А конкретней, почему группы содержат по 3 символа (а не по 4, например)? Это как-то связано с общим количеством символов в исходной строке? |
SeRGuS |
20.12.2004 22:44
Сообщение
#6
|
Новичок Группа: Пользователи Сообщений: 11 Пол: Мужской Репутация: 0 |
volvo
Цитата А конкретней, почему группы содержат по 3 символа (а не по 4, например)? Это как-то связано с общим количеством символов в исходной строке? Та хоть пять символов в группе(просто привел более простой вариант), длина строки может быть любой достаточно длиной. Зависимости, кол-ва символов в группе с иходной строкой, нету. |
volvo |
20.12.2004 22:54
Сообщение
#7
|
Гость |
Тогда как разбивать на группы???
|
SeRGuS |
21.12.2004 19:30
Сообщение
#8
|
Новичок Группа: Пользователи Сообщений: 11 Пол: Мужской Репутация: 0 |
Сегодня узнал, что имено надо сделать:
-ввести строку наподобие: nb stk lfn 123 5 группы букв - это может быть любое слово, для отделения одной группы(слова) от другой использовать пробел. -программа должна проверить не содержатся ли в первых трех словах цифры и подсчитать кол-во вхождения буквы f в них |
SeRGuS |
23.12.2004 21:46
Сообщение
#9
|
Новичок Группа: Пользователи Сообщений: 11 Пол: Мужской Репутация: 0 |
Добрый вечер всем, задача так и небыла решена мной, очень хороший человек написал приблизительный текст, но она неработает так как надо может кто - нибудь сможет отредактировать исходник:
Код var S0,S1,S: string; l: char; k,i: integer; begin S0:='';S:=''; for i:=1 to 3 do begin S0:= S0+S; S:=''; repeat write ('Введите след символ строки'); read(l); S:=S+l; if (l>='0') and (l<='9') then write ('Непр ввод') else if pos('f',S)<>0 then k:=k+1; until l=' '; write ('Введите оставшуюся часть строки'); read (s1); S:=S0+S1; end; end. P.S.: Нужно ввести все одной строкой, а не почастям. |
volvo |
23.12.2004 22:17
Сообщение
#10
|
Гость |
SeRGuS
Если я правильно понял, тебе нужно вот это... Код uses crt; var ch: char; i, k: byte; s: string; begin write(' s = '); s := ''; k := 0; i := 1; repeat ch := readkey; write(ch); if ch = ' ' then begin inc(i); s := '' end else if ch in ['0' .. '9'] then else begin s := s + ch; inc(k, ord(ch = 'f')) end until i > 3; writeln(s); writeln(k) end. |
SeRGuS |
23.12.2004 23:14
Сообщение
#11
|
Новичок Группа: Пользователи Сообщений: 11 Пол: Мужской Репутация: 0 |
Огромное спасибо !!! То что надо ! :P
|
Текстовая версия | 29.04.2024 7:42 |