powered by simpleCommunicator - 2.0.56     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / как отсортировать входной поток чисел в масив
4 сообщений из 4, страница 1 из 1
как отсортировать входной поток чисел в масив
    #35883913
mich67
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Есть входной поток чисел (повторяющихся), например 1,2,3,4,5,2,3,5,4,2,1...надо их отсортировать по-строчно, т.е. в первой строке по порядку 1,2,3,4,5 а дальше вторая строка2,3,5,4 если есть отсутствующие значит пусто, третья начинается с 2 и если встретится отсутствуееще число у нас 1 значит записать во вторую строку. ПОдскажите как в FOXPRO можно это реализовать
...
Рейтинг: 0 / 0
как отсортировать входной поток чисел в масив
    #35887700
LUCIAN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
mich67,
Это подойдёт ?
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
SELECT  0 
CREATE CURSOR CCIS (CIS I( 4 ))
INSERT INTO CCIS VALUES ( 1 )
INSERT INTO CCIS VALUES ( 2 )
INSERT INTO CCIS VALUES ( 3 )
INSERT INTO CCIS VALUES ( 4 )
INSERT INTO CCIS VALUES ( 5 )
INSERT INTO CCIS VALUES ( 2 )
INSERT INTO CCIS VALUES ( 3 )
INSERT INTO CCIS VALUES ( 5 )
INSERT INTO CCIS VALUES ( 4 )
INSERT INTO CCIS VALUES ( 2 )
INSERT INTO CCIS VALUES ( 1 )
SELECT CIS,COUNT(*) KCIS FROM CCIS GROUP BY  1  INTO CURSOR C1 READWRITE
KPL=_TALLY
DIMENSION MSTRU(KPL, 4 )
FOR I= 1  TO KPL
	MSTRU(I, 1 )="P"+LTRIM(STR(I))
	MSTRU(I, 2 )="I"
	MSTRU(I, 3 )= 4 
	MSTRU(I, 4 )= 0 
ENDFOR
SELECT  0 
CREATE CURSOR CSTR FROM ARRAY MSTRU
DIMENSION MCIS(KPL)
SUMI= 1 
DO WHILE SUMI> 0 
	SELECT 	C1
	SUMI= 0 
	SCAN
		MCIS(RECNO())=IIF(C1.KCIS> 0 ,C1.CIS, 0 )
		REPLACE C1.KCIS WITH IIF(MCIS(RECNO())> 0 ,C1.KCIS- 1 , 0 )
		SUMI=SUMI+C1.KCIS
	ENDSCAN
	SELECT CSTR
	APPEND BLANK
	GATHER FROM MCIS
ENDDO
SELECT CSTR
BROW
...
Рейтинг: 0 / 0
как отсортировать входной поток чисел в масив
    #35887863
LUCIAN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
mich67,

или так
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
SELECT  0 
CREATE CURSOR CCIS (CIS I( 4 ))
INSERT INTO CCIS VALUES ( 1 )
INSERT INTO CCIS VALUES ( 2 )
INSERT INTO CCIS VALUES ( 3 )
INSERT INTO CCIS VALUES ( 4 )
INSERT INTO CCIS VALUES ( 5 )
INSERT INTO CCIS VALUES ( 2 )
INSERT INTO CCIS VALUES ( 3 )
INSERT INTO CCIS VALUES ( 5 )
INSERT INTO CCIS VALUES ( 4 )
INSERT INTO CCIS VALUES ( 2 )
INSERT INTO CCIS VALUES ( 1 )
SELECT CIS,COUNT(*) KCIS FROM CCIS GROUP BY  1  INTO CURSOR C1 READWRITE
KPL=_TALLY
SUMI= 1 
i= 0 
DO WHILE SUMI> 0 
	SELECT 	C1
	SUMI= 0 
	SCAN
		i=i+ 1 
		DIMENSION MCIS(i,KPL)
		MCIS(i,RECNO())=IIF(C1.KCIS> 0 ,C1.CIS, 0 )
		REPLACE C1.KCIS WITH IIF(MCIS(i,RECNO())> 0 ,C1.KCIS- 1 , 0 )
		SUMI=SUMI+C1.KCIS
	ENDSCAN
ENDDO
DISPLAY MEMORY LIKE mcis

...
Рейтинг: 0 / 0
как отсортировать входной поток чисел в масив
    #35887890
LUCIAN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
LUCIAN,в предыдущем i=i+1 не там стоит надо так

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
SELECT  0 
CREATE CURSOR CCIS (CIS I( 4 ))
INSERT INTO CCIS VALUES ( 1 )
INSERT INTO CCIS VALUES ( 2 )
INSERT INTO CCIS VALUES ( 3 )
INSERT INTO CCIS VALUES ( 4 )
INSERT INTO CCIS VALUES ( 5 )
INSERT INTO CCIS VALUES ( 2 )
INSERT INTO CCIS VALUES ( 3 )
INSERT INTO CCIS VALUES ( 5 )
INSERT INTO CCIS VALUES ( 4 )
INSERT INTO CCIS VALUES ( 2 )
INSERT INTO CCIS VALUES ( 1 )
SELECT CIS,COUNT(*) KCIS FROM CCIS GROUP BY  1  INTO CURSOR C1 READWRITE
KPL=_TALLY
SUMI= 1 
i= 0 
DO WHILE SUMI> 0 
	SELECT 	C1
	SUMI= 0 
	i=i+ 1 
	SCAN
		DIMENSION MCIS(i,KPL)
		MCIS(i,RECNO())=IIF(C1.KCIS> 0 ,C1.CIS, 0 )
		REPLACE C1.KCIS WITH IIF(MCIS(i,RECNO())> 0 ,C1.KCIS- 1 , 0 )
		SUMI=SUMI+C1.KCIS
	ENDSCAN
ENDDO
DISPLAY MEMORY LIKE mcis

...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / как отсортировать входной поток чисел в масив
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]