Напечатать целые числа, содержащиеся в строке |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
Напечатать целые числа, содержащиеся в строке |
GolDen |
Сообщение
#1
|
Группа: Пользователи Сообщений: 4 Репутация: 0 |
Прошу помочь мне с данной задачей. :-/
Напечатать целые числа, содержащиеся в строке. GolDen |
GLuk |
Сообщение
#2
|
Профи Группа: Пользователи Сообщений: 775 Пол: Мужской Репутация: 0 |
Сам то начал делать??
В твоем понимании целые числа в строке это: Const S = '32768,982,3241'; или нет?? |
GolDen |
Сообщение
#3
|
Группа: Пользователи Сообщений: 4 Репутация: 0 |
Я думаю целые числа - это числа без точек и запятых. Строка - набор символов среди которых встречаются числа. Из них надо выбрать целые.
|
GolDen |
Сообщение
#4
|
Группа: Пользователи Сообщений: 4 Репутация: 0 |
Вот, что у меня получилось, а дальше никак не получается:
Код Program l5; uses crt; const n=255; var i:byte; c:integer; m:array[1..n] of integer; s:string; Begin clrscr; Writeln('Введите строку:'); Readln(s); c:=1; for i:=1 to length(s) do if (s[i]>='0') or (s[i]<='9') then Begin m[c]:=s[i]; c:=inc(c); End; for i:=1 to c-1 do Writeln(m[i]:6:3,''); Readkey End. Необходим ли Const? Хочу находить число и записывать его в массив. Сообщение отредактировано: volvo - |
Alesha_GA |
Сообщение
#5
|
Пионер Группа: Пользователи Сообщений: 56 Пол: Мужской Репутация: 0 |
Надо учитывать был ли предыдущий сивол числом.
Код Program l5; uses crt; const n=255; var i:byte; c:integer; mn:array[1..n] of integer; m:array[1..n] of string; s:string; bpl:boolean; Begin clrscr; Writeln('Введите строку:'); Readln(s); c:=1; bpl:=false; for i:=1 to length(s) do if (s[i]>='0') or (s[i]<='9') then Begin if bpl=true then c:=c-1; m[c]:=m[c]+s[i]; c:=inc(c); bpl:=true; End else bpl=false; {Переводиш string в integer и всё.} Readkey End. Сообщение отредактировано: volvo - -------------------- Deleting...
All RESET [Return] |
GolDen |
Сообщение
#6
|
Группа: Пользователи Сообщений: 4 Репутация: 0 |
Не особо понял, как это "Переводиш string в integer и всё. " Объясни pls.
|
Alesha_GA |
Сообщение
#7
|
Пионер Группа: Пользователи Сообщений: 56 Пол: Мужской Репутация: 0 |
Извини, не успел вчера дописать, инет кончался.
Значит там где переводиш string в integer: Код for i:=1 to c-1 do begin val(m[i],mn[i],k); { k:integer;} end; Теперь в массиве mn содержатся все целые числа. Успехов! Сообщение отредактировано: volvo - -------------------- Deleting...
All RESET [Return] |
Текстовая версия | 11.01.2025 10:28 |