![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 18.02.2009
Сообщений: 20
|
![]()
С помощью этой программы я из заданной строки символов, разделённый пробелами (одним или несколькими) вывожу массив из максимум 20 чисел.
Program massiv; var s,sout: string; n,len,m: integer; A: array[1..20] of string; BEGIN Writeln('Задайте последовательность символов разделённые пробелами',s); Readln(s); sout:= ' '; for m:= 1 to 20 do A[m]:= ' '; len:= Length(s); for n:= 1 to len do for m:= 1 to 20 do while s[n]<>' ' do A[m]:= A[m]+s[n]; m:= m+1; for m:= 1 to 20 do Writeln('палучился массив ',A[m]); Readln; END. |
![]() |
![]() |
![]() |
#2 |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
![]()
1) TurboPascal всё компилируется. Чем пытаетесь компилировать?!
2) "получился" 3) алгоритм разбора строки абсолютно запутан и неверен! Например, программа всегда виснет на бесконечном цикле: while s[n]<>' ' do A[m]:= A[m]+s[n]; (т.к. n внутри цикла не меняется!!!! Да и пробела в строке может не быть!!!) |
![]() |
![]() |
![]() |
#3 |
Пользователь
Регистрация: 18.02.2009
Сообщений: 20
|
![]()
pascal ABC...
а алгоритм вроде работал но чуть не верно))и цикл не бесконечный...если длина строки меньше шестидесяти,а слов в строке меньше 20 ,то вариантов конечное число |
![]() |
![]() |
![]() |
#4 |
Старожил
Регистрация: 15.02.2010
Сообщений: 15,821
|
![]()
Именно, что бесконечный...
|
![]() |
![]() |
![]() |
#5 |
Пользователь
Регистрация: 18.02.2009
Сообщений: 20
|
![]()
а вариант второй строки ,в которую записано всё с одним пробелом,а затем отдельная запись по словам в массив подойдёт ?
|
![]() |
![]() |
![]() |
#6 | |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
![]() Цитата:
|
|
![]() |
![]() |
![]() |
#7 |
Форумчанин
Регистрация: 21.09.2009
Сообщений: 431
|
![]()
он просто жжет - не обращайте внимания
|
![]() |
![]() |
![]() |
#8 |
Пользователь
Регистрация: 18.02.2009
Сообщений: 20
|
![]()
просто нельзя массив заставить наращивать значение поэтому пусть лучше принимает значения строки)
|
![]() |
![]() |
![]() |
#9 |
Пользователь
Регистрация: 18.02.2009
Сообщений: 20
|
![]()
Program massiv;
var s,sout:string; n,len,m:integer; A:array[1..20] of string; BEGIN Writeln('Задайте последовательность символов разделённые пробелами',s); Readln(s); for m:=1 to 20 do sout[m]:=' '; len:=Length(s); for n:=1 to len do for m:=1 to 20 do while s[n]<>' ' do sout[m]:= sout[m]+s[n]; for m:=1 to 20 do A[m]:=sout[m]; for m:= 1 to 20 do Writeln('палучился массив ',A[m]); Readln; END. ругается на строке sout[m]:=sout[m]+s[n] |
![]() |
![]() |
![]() |
#10 | |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
![]() Цитата:
sout[m]+s[n] - операция конкатенации (объединения) двух символов. а теперь расскажите, как в ОДИН символ можно поместить ДВА символа?! p.s. сам алгоритм не смотрел, ибо не понимаю Вас... |
|
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
vs 2008 не компилирует | Sr.wills | Общие вопросы C/C++ | 1 | 21.04.2010 10:37 |
Dev C++ компилирует, Visual C++ ругается | Cookson | Visual C++ | 7 | 02.10.2009 10:39 |
Компилятор не компилирует!((( | Тимс | Общие вопросы по Java, Java SE, Kotlin | 10 | 11.06.2009 18:35 |
Devcpp-4.9.9.2 не компилирует. | MacTiger | Общие вопросы C/C++ | 6 | 20.04.2009 22:15 |
Каким образом Delphi компилирует EXE? | Jupiter | Общие вопросы Delphi | 4 | 26.03.2008 16:52 |