Napisz program:
Uporządkuj dwa podciągi x, y ZA POMOCĄ SCALANIA
w TP
Lista kroków
1.do póki jeden z elementów ciągów x, y nie jest pusty rób:
-weź z "początku" x, y element
- porównaj
-większą z nich przenieś do ciągu z
2. Przepisz elementy z ciągu niepustego do ciągu z
Uporządkowanie podciągów - program w Pascalu
-
- Użytkownik
- Posty: 735
- Rejestracja: 7 lis 2005, o 23:56
- Płeć: Mężczyzna
- Lokalizacja: Łódź
- Podziękował: 2 razy
- Pomógł: 133 razy
Uporządkowanie podciągów - program w Pascalu
nie wrzucam w kompilator. Jeśli mamy ciągi (tablice) A,B o rozmiarach SIZE_A, SIZE_B i wrzucamy to do tablicy C o rozmiarze SIZE_A + SIZE_B
w programie zakładam: 1. że tablice zaczynają numerowanie od zera (jak standardowo na kompach) i że tablice A,B są posortowane (tak wynika z Twojego algorytmu). Tobie zostawiam dopisanie wszelkich deklaracji i poprawienie ewentualnych literówek
Kod: Zaznacz cały
REST_A := SIZE_A;
REST_B := SIZE_B;
FOR I := 1 TO (SIZE_A + SIZE_B) DO
IF(REST_A > 0) AND (REST_B > 0) THEN
IF(A[SIZE_A - REST_A ] > B[SIZE_B - REST_B])
BEGIN
C[I] := B[SIZE_B - REST_B];
DEC(REST_B);
END;
ELSE
BEGIN
C[I] := A[SIZE_A - REST_A]
DEC(REST_A);
END;
ELSE IF(SIZE_A = 0)
FOR J := I TO (SIZE_A + SIZE_B) DO
BEGIN
C[I] = B[SIZE_B - REST_B];
DEC(SIZE_B);
INC(I);
END;
ELSE
FOR J := I TO (SIZE_A + SIZE_B) DO
BEGIN
C[I] = B[SIZE_B - REST_B];
DEC(SIZE_B);
INC(I);
-
- Użytkownik
- Posty: 56
- Rejestracja: 22 maja 2008, o 14:05
- Płeć: Kobieta
- Lokalizacja: jelcz
- Podziękował: 1 raz
Uporządkowanie podciągów - program w Pascalu
Oba ciągi są nieposortowane właśnie a jak zrobić że te ciągi są pobierane z dwóch plików?