Algorytmy z przykładami rozgałęzień w bloku BASIC. Algorytmiczna struktura rozgałęziająca się w Visual Basicu

Lekcja nr 31. Tworzenie programów przy użyciu operatorów branżowych. Dwie możliwości rozwiązania problemów.

Wcześniej rozważaliśmy tylko te algorytmy, w których wszystkie akcje są wykonywane jedna po drugiej, niezależnie od czegokolwiek. Takie algorytmy nazywane są liniowymi. Charakteryzuje je forma organizacji działań – realizacja sekwencyjna.

Rozważmy algorytmy, w których wykonywana jest pewna akcja w zależności od spełnienia lub niespełnienia jakiegoś warunku.

Rozgałęzianie jest formą organizowania działań, w której w zależności od spełnienia lub niespełnienia jakiegoś warunku wykonywana jest jedna lub inna sekwencja działań.

Najprostszą komendą zmieniającą naturalną kolejność wykonywania programu jest komenda GOTO (idź do) (idź tam, idź do...). To polecenie wygląda następująco:

GOTO N, gdzie N jest numerem linii programu

Za pomocą tego polecenia komputer wykonuje polecenie numer N.

Znane są nam dwa sposoby ewidencjonowania gałęzi – kompletne i niekompletne.

Rozgałęzienie w formie niekompletnej

Opcja nagrywania


Q jest tutaj warunkiem, a P jest sekwencją działań, które należy wykonać, gdy warunek jest spełniony. Rozgałęzienie w niekompletnej formie zapisuje się w następujący sposób:

Jeśli Q to:

W przeciwnym razie - koniec gałęzi

Tę formę notacji można przełożyć na język BASIC na różne sposoby. Jeżeli P składa się z jednej akcji, wówczas tłumaczenie będzie wyglądało następująco:

(słowo „jeśli” oznacza „jeśli”, a słowo „wtedy” oznacza „że”). Na przykład:

10 JEŚLI X > 0 TO Y = LOG (X)

Jeżeli wartość zmiennej x > 0, to komputer obliczy ln x i wynik przypisze zmiennej Y, po czym zostanie wykonane polecenie nr 20. Jeżeli wartość x nie będzie większa od zera, wówczas zostanie wykonane polecenie nr 20 zostać natychmiast wykonane.

Załóżmy teraz, że ciąg P składa się z kilku akcji. Wtedy niepełna forma rozgałęzienia będzie trudniejsza do napisania.

Przykładowo: P zawiera 6 akcji p1...p6, gałąź powinna zaczynać się od linii 120, a następna komenda po gałęzi ma numer 150. Oznacza to, że jeśli warunek Q nie jest spełniony, należy przejść do komendy 150. W tej podstawowej struktury, program będzie wyglądał następująco:

Opcja nagrywania 2:





120 JEŚLI NIE (Q) TO 150

Tutaj NOT (Q) oznacza negację warunku (Q), na przykład NOT (x y i NOT (x=y) oznacza x<>y.

Należy zwrócić uwagę, że w wierszach postaci: JEŻELI... TO GOTO N, gdzie N jest numerem wiersza, nie ma potrzeby wpisywania jednego ze słów GOTO lub THEN.

JEŚLI...WTEDY DOSTAJĘ N

Oznacza to samo

Na przykład algorytm znajdowania maksimum dwóch liczb

2. Przypisz M, wartość A

3. Jeśli M<В, то

4. Przypisz M wartość B

5. Koniec gałęzi

6. Powiadom M

Schemat blokowy



W PODSTAWIE:

30JEŚLI M< B THEN M = B

Ten sam algorytm można przełożyć na BASIC w inny sposób:

10 WEJŚCIE A, B
20 M = A

30 JEŚLI NIE M< B THEN 50

Teraz pokaż, jak napisać polecenie rozgałęzienia w pełnej formie w języku BASIC:

Koniec oddziału Tak


Podobnie jak poprzednio, jeśli P i T składają się z jednej akcji, wygodnie jest przetłumaczyć w następujący sposób:



JEŚLI P, TO P ELSE T

Jeśli P i T składają się z kilku akcji, wygodniej jest przetłumaczyć w następujący sposób (na przykład niech P składa się z trzech, T - z czterech poleceń, gałąź zaczyna się od linii 530, linia następująca po gałęzi ma numer 600) .


530 JEŚLI Q TO 536

Podczas wykonywania tego fragmentu komputer wykona polecenia P1, P2, P3, jeśli warunek Q jest spełniony, oraz polecenia T1...T4, jeśli Q nie wystąpi. Następnie po wykonaniu odpowiedniej serii poleceń komputer przystąpi do wykonania polecenia zapisanego w linii 600.

Rozważmy programy do obliczania wartości funkcji zgodnie z następującą zasadą:

20 JEŚLI X>=2 TO Y = SQR (X) W przeciwnym razie Y = ABS (X)

30 DRUKUJ "Y="; Y

Możesz napisać ten program w ten sposób:

20 JEŚLI X >= 2 TO 50

Praca praktyczna nr 16

Temat: „Rozwiązywanie problemów za pomocą instrukcji IF THEN GOTO” (1 opcja)

Zadanie nr 1

Znajdź maksimum dwóch liczb a i b

Utwórz algorytm, schemat blokowy i program w języku BASIC

Zadanie nr 2

Utwórz algorytm, schemat blokowy i program w języku BASIC. Dokonaj analizy wskaźników wydajności Okręgu Koshkinsky Pool za rok 1998, porównując kwotę dochodu za rok sprawozdawczy So z kwotą dochodu za poprzedni rok Sn i wyciągnij wnioski. Skorzystaj z karty wyników.

Praca praktyczna nr 17

Temat: „Rozwiązywanie problemów za pomocą instrukcji IF THEN GOTO” (opcja 2)

Zadanie nr 1

Napisz algorytm, schemat blokowy i program w języku BASIC, korzystając z instrukcji REM, IF THEN GOTO. Aby obliczyć poziom dynamiki, jeżeli poziom dynamiki jest obliczany ze wzoru: D = (So/Sn) * 100%

D – wskaźnik poziomu dynamiki

Czyli – kwota dochodu za rok sprawozdawczy w tysiącach rubli.

Sn – kwota dochodu za ostatni rok w tysiącach rubli.

Znajdź różnicę: R = D-100%

Jeśli R jest wartością dodatnią, tj. R>0, wówczas poziom dochodu za rok sprawozdawczy podwyższony o R%

Jeśli R jest wartością ujemną, tj. R<0, то уровень доходов снизился на R%

Praca praktyczna nr 18

Temat: „Rozwiązywanie problemów za pomocą instrukcji IF THEN ELSE” (1 opcja)

Zadanie nr 1


Y = jeśli x< 2, если х >2

Zadanie nr 2

Utwórz algorytm, schemat blokowy i program w języku BASIC, aby znaleźć wartości funkcji Y

Y = x 2 – jeśli x<2

Y = 2x 2 – jeśli x>2

Praca praktyczna nr 19

Temat: „Rozwiązywanie problemów za pomocą instrukcji IF THEN ELSE” (opcja 2)

Zadanie nr 1

Utwórz algorytm, schemat blokowy i program w języku BASIC, aby rozwiązać równanie. Stosując zasadę matematyki „nie można dzielić przez zero”

Y = (x+8) / (x-5), jeśli x = 5

Zadanie nr 2

Utwórz algorytm, schemat blokowy i program w języku BASIC, aby rozwiązać równanie. Stosując zasadę matematyki „nie można dzielić przez zero”

Y = (x 2 - 3x) / (x - 3) jeśli x = 3

Lekcja nr 36, Temat: Operatory pętli w języku BASIC. Pisanie programów przy użyciu instrukcji pętli

Omówione wcześniej algorytmy mają wspólne właściwości, przy ich wykonywaniu każdą akcję wykonuje się raz, ale czasami konieczne jest kilkukrotne wykonanie tego samego zestawu akcji.

Definicja: Cykl to fragment algorytmu lub programu, który jest powtarzany więcej niż raz.

Istnieją pętle o z góry określonej liczbie powtórzeń (deterministyczne) oraz cykle, których liczba powtórzeń nie jest z góry znana (iteracyjne).

Możesz utworzyć proces cykliczny, korzystając ze znanych Ci instrukcji IF i GOTO.

Cykl „Do widzenia”

1. Pętla iteracyjna z nieznaną wcześniej liczbą obliczeń

podczas gdy warunek Q

powtórz czynność P

koniec cyklu

Cykl „Dla każdego”

2. Cykl deterministyczny, gdy liczba powtórzeń jest znana z góry

Dla każdego I od L do R

Dla każdego I od L do R

koniec cyklu przez I

(I – licznik pętli, L – początkowa wartość licznika, R – wartość końcowa, P – treść pętli)

W języku BASIC dla każdego z nich tworzona jest pętla

10 DLA I = L DO R

Zwykle wartość początkowa licznika jest mniejsza niż wartość końcowa, wówczas KROK > 0, ale zdarzają się przypadki, gdy wartość początkowa jest większa od wartości końcowej, wówczas KROK<0

Jeśli brakuje KROKU, komputer domyślnie wykonuje krok = 1.

Pętla działa, aż licznik osiągnie swoją końcową wartość. Instrukcja NEXT przekazuje kontrolę do nagłówka pętli, a NEXT jest wykonywana dopiero po osiągnięciu wartości końcowej.

Wartość praktyczna nr 20

Temat: Rozwiązywanie problemów przy użyciu instrukcji pętli FOR NEXT (deterministycznej) dla kilku raipos przy użyciu tabeli wydajności

Zadanie nr 1

Korzystając z tabeli wskaźników wydajności dla raipo na rok 1997, oblicz roczny wynik na pracownika dla kilku raipo: B = Do / Q:

T – obrót handlowy

Q – liczba pracowników

Skonstruuj program pętli, korzystając z instrukcji pętli

Rozwiązanie:

Pętla iteracyjna z nieznaną wcześniej liczbą obliczeń.

Niech będą wymagane wielokrotne obliczenia B - produkcja na pracownika rocznie. Aby policzyć liczbę obliczeń wartości B, użyj zmiennej całkowitej typu N%. Przed rozpoczęciem obliczeń jej wartość musi być równa zeru, N% = 0. Aby zapisać odpowiedź użytkownika „Tak” lub „Nie” na pytanie komputera o konieczność kontynuowania obliczeń, należy użyć np. zmiennej T$ .


Lekcja praktyczna nr 21

Temat: Rozwiązywanie problemów za pomocą operatorów pętli (iteracyjnych) dla kilku promieni przy użyciu tabeli wskaźników wydajności

Zadanie nr 1

Korzystając z tabeli regionalnych wskaźników efektywności za rok 1997, oblicz średnie wynagrodzenie na pracownika rocznie:

Sc – przeciętne wynagrodzenie

F – fundusz płac

Q – liczba pracowników

Weź z tabeli wskaźniki liczby pracowników i funduszu płac.

Aby rozwiązać ten problem, utwórz algorytm, schemat blokowy, program w języku BASIC za pomocą operatorów pętli.

Lekcja praktyczna nr 22

Temat: Tworzenie i rozwiązywanie problemów w ramach cyklu

Zadanie nr 1

Oblicz wartość funkcji sin x w zakresie od -3 do 3 w krokach co 0,5

Zadanie nr 2

Oblicz N! N zaakceptuj z ekranu. Utwórz algorytm lub program

N! = 1 * 2 * 3 …N (K=K * I)

Lekcja praktyczna nr 23

Temat: „Tworzenie i rozwiązywanie problemów typu pętla w pętli ze zmiennymi symbolicznymi

Zadanie nr 1

Oblicz wartość 2 do potęgi N, pobierz N z ekranu

Zadanie nr 2

Oblicz funkcję y w przedziale od -2 do 10 w krokach co 1


Lekcja 42, 43. Temat: Grafika w języku QBASIC

zobacz rozwój metodologiczny

Lekcja praktyczna nr 24

Temat: „Tworzenie programów liniowych z wykorzystaniem operatorów graficznych LINE i PAINT (rysowanie flag)

1. Flaga Japonii

20 LINIA (10, 10) – (70, 50), 8, B

30 FARBA (20, 30), 7, 8

40 KRĄG (40, 30), 10, 4

50 FARBY (40, 30), 4, 4

2. Flaga Mołdawii

10 LINIA (10, 10) – (55, 40), 7, B

20 LINIA (25, 10) – 25, 40), 7

30 LINIA (40, 10) – (40, 40), 7

40 FARBA (20, 30), 9, 7

50 FARBY (30, 30), 14, 7

60 FARBA (50, 30), 4, 7

3. Flaga Rumunii

10 LINIA (10, 50) – (55, 80), 7, B

20 LINIA (25, 50,) – (25, 80), 7

30 LINIA (40, 50) – (40, 80), 7

40 FARBY (20, 65), 1, 7

50 FARBY (30, 60), 14, 7

60 FARBA (50, 70), 4, 7

4. Flaga Czech

10 LINIA (60, 10) – (100, 40), 7, B

20 LINIA (60, 10) – (80, 25), 7

30 LINIA (60, 40) – (80, 25), 7

40 LINIA (80, 25) – (100, 25), 7

50 FARBY (65, 30), 1, 7

60 FARBA (80, 20), 15, 7

70 FARBA (90, 35), 4, 7

5. Flaga rosyjska

10 LINIA (60, 50) – (100, 80), 7, B

20 LINIA (60, 50) – (100, 60), 7

30 LINIA (60, 70) – (100, 70), 7

40 LINIA (60, 80) – (100, 80), 7

50 FARBY (80, 55), 15, 7

60 FARBA (80, 65), 1, 7

70 FARBA (80, 75), 4, 7

6. Flaga Brazylii

10 LINIA (110, 10) – (150, 40), 7, B

20 LINIA (115, 25) – (130, 35), 7

30 LINIA (130, 15) – (115, 25), 7

40 LINIA (130, 15) – (145, 25), 7

50 LINIA (145, 25) – (130, 35), 7

60 KRĄG (130, 25), 5, 7

70 FARBA (120, 15), 2, 7

80 FARBA (132, 19), 14, 7

90 FARBA (131, 26), 1, 7

7. flaga Szwecji

10 LINIA (10, 10) – (55, 45), 1, B

20 FARBY (30, 20), 1, 1

30 LINIA (20, 10) – (25, 45), 14, B

40 FARBA (23, 20), 14

50 LINIA (10, 25) – (55, 30), 14, B

60 FARBA (30, 27), 14

70 FARBA (15, 26), 14

Lekcja praktyczna nr 25

Temat: „Tworzenie programów cyklicznych przy użyciu LINE i PAINT

Zadanie nr 1.

Korzystając z operatorów graficznych, utwórz program do rysowania liniowego

Algorytm rozwiązania

20 LINIA (80, 20) - (20, 80), 4

30 LINIA (160, 20) - (240, 60), 5, BF

40 LINIA (80, 80) - (200, 160), 4, B

50 LINII (80, 120) - (140, 80), 3

60 LINIA (140, 80) - (200, 120), 3

70 LINIA (200, 120) - (140, 160), 3

80 LINIA (140, 160) - (80, 120), 3

Zadanie nr 2

Dla proponowanego rysunku ułóż program liniowy, korzystając z operatorów graficznych LINIA, MALOWANIE, EKRAN

Algorytm rozwiązania problemu

20 LINIA (100, 50) - (200, 80), 2, B

30 LINIA (100, 80) - (200, 110), 2, B

40 LINIA (100, 110) - (200, 140), 2, B

50 LINII (100, 50) - (200, 80), 2

60 LINIA (100, 110) - (200, 80), 2

70 LINIA (100, 110) - (200, 140), 2

80 FARBA (180, 70), 3, 2

90 FARBA (120, 70), 4, 2

100 FARBY (120, 100), 6, 2

110 FARBA (180, 100), 7, 2

120 FARBA (180, 120), 8, 2

130 FARBA (120, 130), 9, 2

Lekcja praktyczna nr 26

Temat: Tworzenie programów liniowych z wykorzystaniem operatorów CIRCLE i PAINT (rysowanie łuków, owali)

Algorytm rozwiązania problemu

20 KRĄG (70, 120), 10, 14

30 KOŁO (70, 90), 20, 4, 4,71, 1,57, 2

40 KOŁO (70, 90), 20, 4, 1,57, 4,71, 2

50 KRĄG (70, 150), 20, 4, 4,71, 1,57, 2

60 KOŁO (70, 150), 20, 4, 1,57, 4,71, 2

70 KOŁO (40, 120), 20, 4, 3,14, 6,28, 0,5

80 KOŁO (40, 120), 20, 4, 6,28, 3,14, 0,5

90 KOŁE (100, 120), 20, 4, 3,14, 6,28, 0,5

100 KRĄG (100, 120), 20, 4, 6,28, 3,14, 0,5

110 KOŁO (70, 120), 80, 2, 6,28, 1,57, 4

Lekcja praktyczna nr 27

Temat: Kompilowanie programów cyklicznych przy użyciu instrukcji CIRCLE i PAINT

Dla danego rysunku ułóż program liniowy, korzystając z operatorów graficznych KOŁO, PAINT, SCREEN

Algorytm rozwiązania problemu

20 KOŁE (220, 140), 80, 1, 6,28, 3,14

30 KOŁE (160, 140), 20, 1, 6,28, 3,14, 0,5

40 KOŁO (200, 140), 20, 1, 6,28, 3,14, 0,5

50 KOŁE (240, 140), 20, 1, 6,28, 3,14, 0,5

60 KOŁO (280, 140), 20, 1, 6,28, 3,14, 0,5

70 KRĄG (180, 100), 10, 5

80 KRĄG (220, 90), 10, 7

90 KRĄG (220, 120), 10, 6,

100 KRĄG (270, 110), 10, 11

110 LINIA (220, 140) - (220, 180), 1

120 KOŁE (210, 180), 10, 1, 3,14, 6,28

Lekcja praktyczna nr 28

Temat: Pisanie programów liniowych przy użyciu instrukcji DRAW i PAINT

Dla proponowanych rysunków utwórz programy liniowe, korzystając z operatorów graficznych RYSUJ, MALUJ, EKRANU

Algorytm rozwiązania problemu

20 RYSUJ "C5 BM 10,80 D70 R10 D10 R10 D10 R10 D10 R60 U10 R50 U10 R10 U10 R10 U50 L10 U20 L20 U20 R20 U10 R20 U10 L30 U10 L10 U10 L30 D10 L10 D10 L10 D20 R10 D10 R10 D20 L60 D10 L20 U10 L10 U10 L10 "

30 RYSUJ „C14 BM 130,50 U10 R10 D10 L10”

20 RYSUJ „C12 BM 110,90 D60 R20 U30 R20 D70 L20 D20 R40 U70 R10 D70 R40 U20 L20 U70 R20 D30 R20 U60 L50 U20 R20 U40 L70 D40 R20 D20 L50”

30 RYSUJ „C12 BM 140,30 E10 R70 G10”

40 RYSUJ „C12 BM 220,30 D40 G10”

50 RYSUJ „C12 BM 110,90 E10 R40”

60 RYSUJ „C12 BM 200,70 D10 G10”

70 RYSUJ „C12 BM 200,80 R50 G10”

80 RYSOWANIE „C12 BM 250,80 D60, G10”

90 RYSUJ „C12 BM 210,120 D60 G10”

100 RYSUJ „C12 BM 210,180 R20 D20 G10”

110 RYSUJ „C12 BM 230,180 G10”

120 RYSOWANIE „C12 BM 140,120 D20, G10”

130 RYSUJ „C12 BM 130,190 E10 R10”

140 RYSUJ „C12 BM 170,210 E10”

Lekcja praktyczna nr 29

Temat: Tworzenie programów liniowych przy pomocy instrukcji DRAW i PAINT, CIRCLE, LINE

Dla proponowanych rysunków utwórz programy liniowe wykorzystując operatory graficzne RYSUJ, MALUJ, KOŁO, LINIA, EKRAN

Algorytm rozwiązania problemu

"Krokodyl"

20 RYSUJ "C2 BM 10,60 D5 F5 E5 F5 E5 F5 E5 F5 E5 R5 D10 H5 G5 H5 G5 H5 G5 H5 G5 D5 R40 G5 R10 E5 R30 G5 R10 E5 R30 E40 L15 G5 L5 D5 L5 G10 L20 H5 G5 H5 G5 H5 G5 L15 H10 D10 L40 H5 G5"

30 KOŁE (65,60), 2,4

10 RYSUJ "C9 BM30.40 D40 R20 D70 R30 U20 L20 U20 R30 D40 R30 U20 L10 U40 R10 D10 R20 D10 R20 U10 R20 U10 R10 U60 L10 D10 L10 D10 L10 D10 L40 U10 L10 U10 L10 D50 L 60 U50 R10 U10 R20 U10 L30 D10 L10 D10 L10 D10 L10"

20 KRĄG (140, 70), 7, 5

30 KRĄG (180, 70), 7, 5

40 KOŁE (160, 80), 5, 15, 6,28, 3,14, 0,5

50 KOŁE (160, 80), 5, 15, 3,14, 6,28, 0,5

60 KRĄG (160, 100), 7, 4

70 PSET (160, 100)

Praca praktyczna nr 30

Temat: Kompilacja programów cyklicznych przy użyciu operatorów graficznych (RND)

„Kręgi”

10 DRUKUJ „kółka”

20 WEJŚCIE „wprowadź liczbę okręgów”; N

30 CLS: EKRAN 7

50 X = RND * 300

60 Y = RND * 180

90 KOŁO (x, y), r, ok

100 FARBY (x, y), c, c

10 DRUKUJ „kropki”

20 WEJŚCIE „wprowadź liczbę punktów”; N

30 CLS: EKRAN 7

50 X = RND * 300

60 Y = RND * 180

80 PSET (x, y), C

10 DRUKUJ „Linie”

20 WEJŚCIE „wprowadź liczbę linii”; N

30 CLS: EKRAN 7

50 X = RND * 300

60 Y = RND * 180

„Prostokąty”

10 DRUKUJ „prostokąty”

20 WEJŚCIE „wprowadź liczbę prostokątów”; N

30 CLS: EKRAN 7

50 X = RND * 300

60 Y = RND * 180

80 LINIA (x1, y1) - (x2, y2), C

Lekcja praktyczna nr 31

Temat: Komponowanie programów z rozgałęzianiem i zapętlaniem dla operatorów graficznych (LINE, PAINT)

Lekcja praktyczna nr 32

Temat: Kompilowanie programów z rozgałęzianiem i pętlami dla operatorów graficznych (CIRCLE i PAINT)

Lekcja praktyczna nr 33

Temat: Tworzenie wykresów funkcji paraboli kwadratowych i sześciennych

„Parabola kwadratowa”

OKNO (-10, 10)-(10, -10)

LINIA (-10, 0)-(10, 0)

LINIA (0, 10)-(0, -10)

DLA X = -10 DO 10 KROK .01

„Parabola sześcienna”

OKNO (-10, 10)-(10, -10)

LINIA (-10, 0)-(10, 0)

LINIA (0, 10)-(0, -10)

DLA X = -10 DO 10 KROK .01

Lekcja praktyczna nr 34

Temat: Wykresy funkcji trygonometrycznych

Zadanie nr 1

Wykres funkcji trygonometrycznych

Algorytm rozwiązania problemu:

20 OKNO (-10, 10)-(10, -10)

30 LINIA (-10, 0)-(10, 0)

40 LINIA (0, 10)-(0, 10)

50 DLA X = -10 DO 10 KROK .01

70 PSET (X, Y), 4

90 DLA X = -10 DO 10 KROK .01

110 PSET (X, Y), 10

130 DLA X = -10 DO 10 KROK .01

150 PSET (X, Y), 6

Zadanie nr 2

Konstruuj wykresy funkcji y = x^2, y = x^3, gdzie y = x, jeśli x >=0

y = jeśli x<0

Algorytm rozwiązania problemu:

20 OKNO (-10, 10)-(10, -10)

30 LINIA (-10, 0)-(10, 0)

40 LINIA (0, 10)-(0, -10)

50 DLA x = -10 DO 10 KROK .01

70 PSET (x, y), 15

90 DLA x = -10 DO 10 KROK .01

100 y = x ^ 3140 JEŚLI x >= 0 WTEDY y = SQR(x) W przeciwnym razie y = -x

150 PSET (x, y), 2

110 PSET (x, y), 3

130 DLA x = -10 DO 10 KROK .01

Lekcja praktyczna nr 35

Temat: Tworzenie programów liniowych i schematów blokowych (przygotowanie do lekcji próbnej)

Lekcja praktyczna nr 36

Temat: Operatory rozgałęziające, pętle, wykresy. Opracowywanie programów (przygotowanie do lekcji próbnej)

Lekcja praktyczna nr 37

Lekcja testowa

Pytania, które należy przygotować do lekcji testowej:

1. Program powłoki NC, główny cel (NORTON COMMANDER)

2. Pojęcie katalogu, nazwa katalogu, zasady podawania nazw katalogów.

3. Pojęcie pliku, nazwa pliku, zasady określania nazw plików.

4. Nazwy dysków, zasady nazewnictwa dysków.

5. Algorytmizacja. Pojęcie algorytmu. Podstawowe własności algorytmów.

6. Język programowania BASIC, generacje języków. Alfabet języka, podstawowe struktury językowe.

7. Zasady rejestracji operacji na zmiennych z programowania w języku BASIC.

8. Zasady przedstawiania funkcji trygonometrycznych. Zasady przedstawiania liczb w języku BASIC.

9. Podstawowe polecenia języka programowania BASIC. Akcje „przypisz”, „zapytaj”, „pozwól”, zapisywanie reguł z komentarzami i bez.

10. Zmienne znakowe i operacje na nich (dodanie dwóch słów, operacje zaznaczenia części słowa MID$ (...a,b).

11. Schematy blokowe. Liniowe, rozgałęzione i cykliczne (cykl „Przed”, cykl „While” i cykl z „Parametrem”).

12. Operatory rozgałęziające JEŻELI...TO...ELSE dwie możliwości zapisu.

13. Rozgałęzianie operatorów JEŚLI... TO... GOTO dwie opcje zapisu.

14. Pojęcie cyklu. Rodzaje cykli (iteracyjne, deterministyczne).

15. Operatory pętli sztuczna pętla. Cykl z parametrami (FOR... NEXT...WHILE).

16. Operatory graficzne. Operatory rysowania punktów.

17. Operator rysowania odcinka.

18. Operator rysowania prostokątów i kwadratów.

19. Operator rysowania wypełnionego prostokąta.

20. Operator rysowania okręgu.

21. Operator rysowania elipsy ściśniętej wzdłuż osi x.

22. Operator rysowania elipsy ściśniętej wzdłuż osi Y.

23. Operator do malowania powierzchni wewnętrznej.

24. Operator rysowania łuków.

25. Operator rysowania piórem.

26. Rysowanie wykresów funkcji trygonometrycznych i arytmetycznych.

Lekcja nr 58 Temat: System operacyjny WINDOWS. Podstawowe koncepcje

W tej sekcji pokażemy, jak programy rozgałęziające są pisane w języku BASIC. Najprostszą komendą zmieniającą naturalną kolejność wykonywania programu jest komenda GOTO (GO TO – „idź do...”). To polecenie wygląda

gdzie N jest numerem linii programu. Za pomocą tego polecenia komputer wykonuje polecenie numer N.

Znasz dwa sposoby zapisywania gałęzi – niekompletne i kompletne. Rozgałęzienie w formie niekompletnej zapisano w następujący sposób:

Jeśli Q, to: P Koniec gałęzi

(tutaj Q jest warunkiem, a P jest sekwencją poleceń, które należy wykonać, gdy warunek jest spełniony).

Tę formę notacji można przełożyć na język BASIC na różne sposoby. Jeżeli P składa się z jednej akcji, wówczas tłumaczenie będzie wyglądało następująco:

JEŚLI P TO P

(słowo JEŚLI oznacza „jeśli”, a słowo WTEDY oznacza „wtedy”). Na przykład:

10 JEŚLI X>0 TO Y = LOG (X) 20 ...

Jeżeli wartość zmiennej x > 0, to komputer obliczy ln x i wynik przypisze zmiennej y, po czym zostanie wykonane polecenie numer 20. Jeśli wartość x nie będzie większa od zera, wówczas zostanie wykonane polecenie numer 20 zostać natychmiast wykonane.

Załóżmy teraz, że ciąg P składa się z kilku akcji. Wtedy skrócona forma rozgałęzienia będzie trudniejsza do napisania. Niech np. P będzie zawierało 6 akcji P 1, ..., P 6, gałąź powinna zaczynać się od 120. linii, a następna komenda po gałęzi będzie miała numer 150. Oznacza to, że jeśli warunek Q nie jest spełniony, to należy przejść do polecenia 150. Dlatego wpis będzie wyglądał następująco:

120 JEŚLI NIE (Q) TO 150

. . . . . . . . . .

Tutaj NOT (Q) oznacza negację warunku Q (NOT - „nie”). Na przykład NIE (X = Y i NIE (X = Y) oznacza XY.

Należy również pamiętać, że w wierszach formularza

JEŚLI... TO DO TEGO

gdzie K jest numerem linii, można pominąć jedno ze słów GOTO lub THEN, czyli trzy polecenia

JEŚLI... TO JEŚLI... PRZEJDŹ DO JEŚLI... WTEDY PRZEJDŹ DO

oznaczać to samo.

Na przykład algorytm znajdowania maksimum dwóch liczb:

Poproś A, B. Przypisz M wartość A. Jeśli M

W BASIC-u możesz to napisać tak:

10 WEJŚCIE A, B 20 M = A 30 JEŚLI M

Ten sam algorytm można przełożyć na BASIC w inny sposób:

10 WEJŚCIE A,B 20 M = A 30 JEŚLI N0T(M

Pokażmy teraz, jak napisać polecenie rozgałęzienia w pełnej formie w języku BASIC:

Jeśli Q, to: P W przeciwnym razie: T Koniec gałęzi.

Podobnie jak poprzednio, jeśli P i T składają się z jednej akcji, wygodnie jest przetłumaczyć w następujący sposób:

JEŚLI P, TO P ELSE T

(INNEGO - w przeciwnym razie).

Jeśli P lub T składa się z kilku akcji, wygodniej jest przetłumaczyć w następujący sposób (na przykład: niech P składa się z trzech, T - z czterech poleceń, gałąź zaczyna się od 530. linii, linia następująca po gałęzi ma numer 600 ):

530 JEŚLI Q TO 536 531 T 1532 T 2533 T 3534 T 4535 GOTO 600 536 P 1537 P 2538 P 3600 ...

Sprawdź, czy komputer wykonując ten fragment wykona polecenia P 1, P 2, P 3, jeśli warunek Q jest spełniony, oraz polecenia T 1, T 2, T 3, T 4, jeśli Q nie wystąpi. Następnie po wykonaniu odpowiedniej serii poleceń komputer przystąpi do wykonania polecenia zapisanego w linii 600.

Rozważmy przykładowy program do obliczania wartości funkcji według następującej reguły:

10 WEJŚCIE X 20 JEŚLI X>=2 TO Y=SQR(X) W przeciwnym razie Y=ABS(X) 30 PRINT"Y="Y 40 END

Program ten można także zapisać w następujący sposób:

10 WEJŚCIE X 20 JEŚLI X>=2 TO 50 30 Y=ABS(X) 40 GOTO 60 50 Y=SQR(X) 60 KONIEC

Ułóżmy teraz model matematyczny i program rozwiązania następującego problemu „artyleryjskiego”.

Zadanie. W określonej odległości od działa znajduje się ściana. Znany jest kąt nachylenia działa i prędkość początkowa pocisku. Czy pocisk uderzy w ścianę?

Najpierw, jak zwykle, przyjmujemy założenia upraszczające. Pocisk uważamy za punkt materialny, pomijamy opór powietrza i wymiary działa. Oczywiście wierzymy również, że prawa Newtona są spełnione. Z warunków zadania jasno wynika, jakie są dane początkowe: jest to kąt a, prędkość początkowa v, odległość od ściany S i wysokość ściany h. Rezultatem jest komunikat „trafienie” lub „niepowodzenie”. Dane początkowe podlegają naturalnym ograniczeniom: 00, h>0, 0

Oznacza to, że musimy wyprowadzić wzór na wyznaczenie L. Jak wiadomo z kursu fizyki, ruchy poziome i pionowe pocisku w czasie t są odpowiednio równe:

x = (v cos α) t; y = (v sin α) t-gt 2 /2,

gdzie g jest przyspieszeniem ziemskim (9,8 m/s 2). Obliczmy, ile czasu zajmie pociskowi pokonanie odległości S:

t = S/(v cos α).

Podstawiając tę ​​wartość t do wyrażenia na y, otrzymujemy wartość L:


Oczywiście wartość L obliczona za pomocą tego wzoru może również okazać się ujemna. Oznacza to, że pocisk nie dotrze do ściany. Jeśli L okaże się większe niż h, wówczas pocisk przeleci nad ścianą. Oto zbudowany model matematyczny.

Stwórzmy algorytm dla KOMPUTERA:

Raport „Wprowadź prędkość początkową pocisku, odległość od ściany, wysokość ściany”. Zapytanie v, S, h. Raport „Wprowadź kąt lufy pistoletu”. Żądanie A. Jeśli Vν≤0, to: Podaj „Prędkość musi być dodatnia”. Zatrzymywać się. Koniec rozgałęzień. Jeśli vν≥1000, to: Zgłoś „Prędkość jest za wysoka”. Zatrzymywać się. Koniec rozgałęzień. Jeśli S≥0, to: Podaj „Odległość musi być dodatnia”. Zatrzymywać się. Koniec rozgałęzień. Jeśli h≤0, to: Podaj „Wysokość ściany musi być dodatnia”. Zatrzymywać się. Koniec rozgałęzień. Jeśli A≤0, to: Zgłoś „Broń nie powinna strzelać w ziemię”. Zatrzymywać się. Koniec rozgałęzień. Jeżeli A≥3,14/2, to: Zgłoś „Pistolet nie jest wycelowany w ścianę”. Zatrzymywać się. Koniec rozgałęzień. Przypisz wartość L Jeśli L>h, to: Zgłoś „Pocisk nie uderzył w ścianę...”. Zatrzymywać się. Koniec rozgałęzień. Jeśli L

Teraz przetłumacz ten algorytm na BASIC (większość pracy już wykonaliśmy).

pytania

1. Jakim poleceniem można wymusić na komputerze bez sprawdzania jakichkolwiek warunków zmianę kolejności działań?

2. Jak powstaje rozgałęzienie w języku BASIC:

a) w formie niekompletnej;

b) w pełnej formie?

3. Dlaczego w algorytmie rozwiązania problemu „artylerii” potrzeba pierwszych 28 linii?

Zadania do samodzielnego wykonania

1. Przetłumacz na język BASIC algorytmy rozwiązywania problemów 5-7 z § 8 i 1-7 z § 9.

2. Znajdź i popraw błędy w następującym programie do obliczania pierwiastka kwadratowego z liczby:

10 WEJŚCIE X 20 JEŚLI X> = 0 TO 30 30 DRUKUJ SQR(X) 40 GOTO 60 50 DRUKUJ. „Nie można obliczyć pierwiastka” 60 KONIEC

3. Osoba atakująca usunęła polecenie 100 w następującym programie do znajdowania pierwiastków równania kwadratowego:

10 WEJŚCIE A,B,C 20 JEŚLI A 0 TO 50 30 WYDRUK "To równanie nie jest kwadratowe" 40 STOP 50 D=B^2 - 4∗A∗C 60 JEŚLI D

4. Utwórz model matematyczny, algorytm i program w języku BASIC w celu rozwiązania następującego problemu.

Zadanie. Działo strzela w kierunku ruchu chmury gradowej w momencie, gdy unosi się ona nad armatą. Znany jest kąt nachylenia lufy, prędkość pocisku, długość i prędkość chmury oraz wysokość, na której porusza się chmura. Czy pocisk uderzy w chmurę?

JĘZYK PROGRAMOWANIA VISUAL BASIC. DZIAŁY PROGRAMOWANIA

Rozgałęzianie w Visual Basic jest zorganizowane przy użyciu:

  • warunkowa instrukcja JEŻELI;
  • wbudowana funkcja IIF;
  • Operator wyboru CASE.

Aby przetestować jeden warunek i wykonać instrukcję lub blok instrukcji, użyj instrukcja warunkowa JEŻELI...TO. Operator ten może być używany z różnymi składniami: jednowierszową (liniową) i wielowierszową (blokową).

Operator liniowy ma następującą składnię:

Jeśli<условие>Następnie<операторы!>

Operator bloku ma następującą składnię:

Jeśli<условие>Następnie
<блок операторов 1>
Zakończ jeśli

Jeśli dany warunek jest prawdziwy, wykonywany jest blok instrukcji, w przeciwnym razie wykonywany jest blok instrukcji 2. Jeśli klauzula Else nie zostanie określona, ​​ifGdy warunek jest spełniony, sterowanie zostaje natychmiast przekazane następnemu operatorowi po If.

Instrukcja If może być zagnieżdżona, to znaczy umieszczona wewnątrz bloków instrukcji. Aby przetestować więcej niż jeden warunek i wykonać jeden z kilku bloków instrukcji, użyj rozszerzonej instrukcji warunkowej w postaci:

Jeśli<условие 1>Następnie
<блок операторов 1>
W przeciwnym razie<условие 2>Następnie
<блок операторов 2>
W przeciwnym razie<условие n>Następnie
<блок операторов n>
Zakończ jeśli

Aby wybrać jedną z wartości w zależności od spełnienia lub niespełnienia jakiegoś warunku, należy skorzystać z funkcji warunkowej IIF, która ma następującą składnię:

IIF(<условие>, <значение1>, <значение2>)

Ta funkcja zwraca wartość 1, jeśli warunek jest prawdziwy, i wartość 2, jeśli warunek jest fałszywy.

Można użyć wyrażenia logicznego jako warunku zwracającego wartość True lub

Fałsz lub dowolne wyrażenie arytmetyczne (wartość zerowa jest równoznaczna z fałszem, a wartość różna od zera jest równoznaczna z prawdą).

WYBIERZ instrukcję CASE służy do testowania pojedynczego warunku i wykonywania jednego z kilku bloków instrukcji.

Format rekordu operatora:

Wybierz opcję Sprawa<проверяемое выражение>
Sprawa<список выражений 1>
<операторы 1>Sprawa<список выражений 2>
<операторы 2>Sprawa<список выражений 3>
<операторы 3>
Sprawa inna
<операторы группы Else>
Koniec Wybierz

Testowane wyrażenie jest oceniane na początku instrukcji Select Case. To wyrażenie może zwrócić wartość dowolnego typu (logiczna, numeryczna, łańcuchowa).

Lista wyrażeń to jedno lub więcej wyrażeń oddzielonych standardowym znakiem ogranicznika (średnikiem).

Podczas wykonywania operatora sprawdzane jest, czy przynajmniej jeden z elementów tej listy pasuje do testowanego wyrażenia.

Te alimenty na liście wyrażeń mogą przybierać jedną z następujących form:

  • <выражение>- sprawdza zgodność danego wyrażenia z jednym z wyrażeń - elementów listy;
  • <выражение 1>To<выражение 2>- sprawdza, czy dane wyrażenie mieści się w podanym zakresie;
  • < Is <логический оператор> < выражение>- sprawdza spełnienie zadanego warunku dla danego wyrażenia.

Polecenie oddziału w formie pełnej i niekompletnej (lekcja 1)

(To rozwinięcie lekcji na temat „Polecenie rozgałęziania w formie pełnej i niepełnej” opiera się na 1 godzinie tygodniowo; informatyki uczy się tylko w klasach 10 i 11. Przed studiowaniem tego tematu w klasie 10 należy wziąć pod uwagę temat „Algorytm. Jego właściwości i metody zapisu”, „Język programowania BASIC.”)

Cel: rozważ polecenie gałęzi w formie pełnej i niekompletnej; rozwijać umiejętności tworzenia programów z wykorzystaniem schematów blokowych i schematów blokowych z wykorzystaniem programów z poleceniami rozgałęziającymi

Podczas zajęć

I. Moment organizacyjny

II.Sprawdzenie pracy domowej.

Przed tobą leżą kartki papieru z tajemniczymi liczbami. Pod każdą liczbą przedstawiona jest figura geometryczna lub zapisany jest operator. Musisz odpowiedzieć na pytania, znaleźć poprawną odpowiedź i zapisać liczby odpowiadające odpowiedzi w tabeli:

Ulotki z geometrycznymi kształtami i operatorami języka programowania BASIC

18

10

20

14

WYDRUKOWAĆ

WEJŚCIE

CLS

KONIEC

pytania

1. Ta figura geometryczna jest używana na schematach blokowych do wskazania początku i końca algorytmu.

2. Ta figura geometryczna jest używana na schematach blokowych do przedstawienia wszelkich obliczeń.

3. Operator ten służy do wyświetlania danych na ekranie w języku BASIC.

4.Operator ten służy do wprowadzania danych z klawiatury.

5. Operator ten służy do czyszczenia ekranu w BASIC-u.

6. Ta liczba służy do sprawdzania stanu

7. Wejście i wyjście danych na ekran jest oznaczone tą figurą geometryczną.

8. Ta instrukcja kończy każdy program.

Jaki ciąg liczb otrzymałeś w drugim wierszu? W tej sekwencji szyfrowane jest jedno słowo. Spróbuj znaleźć klucz i rozszyfrować to słowo. Podaj definicję.

Odpowiedź:

1

13

4

16

18

10

20

14

A

l

G

O

R

I

T

M

Algorytm to skończony zbiór precyzyjnych i zrozumiałych instrukcji (reguł, instrukcji, działań), które pozwalają rozwiązać dowolny konkretny problem z pewnej klasy podobnych problemów.

III Studiowanie nowego tematu.

Przypomnijmy, jak nazywa się algorytm, który skutkuje wyborem jednego z dwóch możliwych działań? Prawidłowy, rozgałęzienie. Taki algorytm koniecznie zawiera warunek i w zależności od wyniku warunku wybierana jest akcja. Na przykład: Jeśli dzień roboczy, To iść do szkoły, W przeciwnym razie będziemy odpoczywać. Jeśli rodzice dadzą pieniądze To chodźmy na dyskotekę W przeciwnym razie Będziemy oglądać telewizję. Takich przykładów ze zwykłego życia i nauki możemy podać wiele. Na przykład matematyka: Jeśli Czworokąt równoboczny ma kąty proste, To nazwijmy to kwadratem , W przeciwnym razie Nazwijmy to rombem. Fizyka: Jeśli uderzenie elastyczne , To masa ciała zostaje utrzymana , W przeciwnym razie zmiany masowe

Zdefiniujmy teraz, czym jest rozgałęzianie?

Rozgałęzianie jest formą organizowania działań, w której w zależności od spełnienia lub niespełnienia jakiegoś warunku wykonywana jest jedna lub inna sekwencja działań.

Rozważmy polecenie rozgałęzienia w postaci pełnej i niekompletnej, zawierające jedną lub kilka akcji w języku algorytmicznym, przedstawionym w formie schematu blokowego i w języku programowania BASIC. Ułóżmy to w formie tabeli.

Rozgałęzianie

w niepełnej formie

w pełnej formie

I. Zawiera tylko jedną akcję

1.Język algorytmiczny

Jeśli stan Następnie działanie

Jeśli stan Następnie akcja 1 w przeciwnym razie akcja 2

II. Zawiera wiele działań

1. język algorytmiczny

Jeśli stan

To akcja 1, akcja 2,…

Wszystko

Jeśli stan

To akcja 1, akcja 2, ...

W przeciwnym razie akcja 3, akcja 4, ...

Wszystko

2. Schemat blokowy

3. PODSTAWOWY język programowania

F 40 Jeśli stan Następnie 50

50 50 akcja 1

60 akcja 2

40 Jeśli stan Następnie 50 w przeciwnym razie 80

50 akcji 1

60 akcja 2

70 iść do 100

80 akcja 3

Lekcja 3

Rozgałęzienia w algorytmach i programach.

Algorytm rozgałęziający to algorytm, w którym w zależności od warunku wykonywana jest jedna lub inna sekwencja działań.

W wielu przypadkach wymagane jest wykonanie jednej sekwencji działań w określonych warunkach, a drugiej w innych warunkach.

Cały program składa się z poleceń (operatorów). Polecenia mogą być proste lub złożone (polecenia, w obrębie których występują inne polecenia). Polecenia złożone są często nazywane konstrukcjami sterującymi. Podkreśla to, że stwierdzenia te kontrolują dalszy przebieg programu.

Rozważmy napisanie instrukcji warunkowej w języku Basic.

Prosta postać operatora wygląda następująco:

JEŚLI<УСЛОВИЕ>NASTĘPNIE<ОПЕРАТОР>

JEŚLI<УСЛОВИЕ> <ОПЕРАТОР 1>[:<ОПЕРАТОР 2>:…:<ОПЕРАТОР N>]

Jeśli warunek jest prawdziwy, a następnie program wykonuje operator występujący po słowie kluczowym NASTĘPNIE(lub seria instrukcji ze słowa kluczowego NASTĘPNIE zanim koniec), a następnie postępuje według zwykłej procedury. Jeśli złapaćNie sprawiedliwy, potem operator NASTĘPNIE(lub seria stwierdzeń z NASTĘPNIE) Nie wykonane, a program natychmiast powraca do normalnej pracy.
Projekt JEŚLI NASTĘPNIE umożliwia, w zależności od ważności warunku, wykonanie instrukcji lub pominięcie tej instrukcji JEŚLI NASTĘPNIE... umożliwia, w zależności od ważności warunku, wykonanie grupy operatorów lub pominięcie tej grupy operatorów.

Warunki to inny typ wyrażeń logicznych. Używają następujących operatory porównania:

więcej lub równe

mniejszy lub równy

Po prawej i lewej stronie znaku porównania powinny znajdować się ilości należące do tego samego typu. Wynikiem porównania jest wartość logiczna o wartości PRAWDA lub FAŁSZ.

5<7 - ИСТИНА;

8=12 -FALSE (sprawdzamy, czy 8 równa się 12, sprawdzamy, a nie twierdzimy, że 8 = 12);

Poprzednie projekty pozwalały na ominięcie lub wykonanie serii instrukcji w zależności od ważności warunku. To nie był jeszcze oddział. Aby umożliwić rozgałęzienie obliczeń w kilku kierunkach, projekt JEŚLI... TO... INACZEJ...

JEŚLI<УСЛОВИЕ>NASTĘPNIE<ОПЕРАТОРЫ 1>W PRZECIWNYM RAZIE<ОПЕРАТОРЫ 2>
Jeśli warunek jest prawdziwy (TRUE), to<операторы 1>(stoi pomiędzy NASTĘPNIE I W PRZECIWNYM RAZIE), A<операторы 2>(przychodzi po W PRZECIWNYM RAZIE) zostaną pominięte.
Jeśli warunek nie jest prawdziwy (FAŁSZ), to<операторы 1>są ignorowane i wykonywane<операторы 2>.

JEŻELI - jeśli, TO - wtedy, W przeciwnym razie - w przeciwnym razie.

Jeśli W pokoju jest ciemno, Następnie trzeba włączyć światło.

Jeśli będzie padać, Następnie Muszę wziąć parasol W przeciwnym razie, nie bierz parasola.

Przykład: Sprawdź, czy wpisana liczba jest równa określonej wartości i jeśli jest równa, wyświetl na ekranie komunikat o równości liczb.

REM porównuje liczbę z pewną wartością
WEJŚCIE „Wprowadź a”, a
JEŚLI a=7 TO WYDRUKUJ „Liczby są równe”
KONIEC

Po uruchomieniu programu sprawdzane jest, czy wprowadzona wartość jest równa siedem, czy nie. Jeżeli są równe, na ekranie pojawia się komunikat „Liczby są równe”.

Przykład: Określ większą z dwóch liczb, wyświetl ją na ekranie, następnie pomnóż ją przez dwa i wyświetl wynik na ekranie.


WEJŚCIE „Wprowadź a”, a
WEJŚCIE „Wprowadź b”, b
JEŻELI a>b TO WYDRUKUJ "Większa liczba: ", a:с=2*a
ELSE DRUKUJ "Większa liczba: ", b:с=2*b
DRUKUJ „wynik:”, c
KONIEC

Najpierw program pyta o obie liczby, następnie sprawdza warunek a>b. Jeśli warunek jest spełniony, na ekranie wyświetlana jest liczba a, po czym liczba ta jest podwajana. W przeciwnym razie na ekranie wyświetlana jest liczba b, po czym liczba b jest podwajana. Na koniec na ekranie wyświetlana jest dwukrotność większej liczby.

Uwaga: program ma jedną wadę - nie uwzględnia przypadku, gdy wprowadzone liczby są równe. Naprawmy ten problem, stosując zagnieżdżenie jednego warunku w innym.

REM określa większą z dwóch liczb...
WEJŚCIE „Wprowadź a”, a
WEJŚCIE „Wprowadź b”, b
JEŻELI a=b TNEN WYDRUK "Liczby są równe":c=2*a
W przeciwnym razie JEŚLI a>b TO DRUKUJ „Większa liczba: „, a: с=2*a
ELSE PRINT "Większa liczba: ", b: с=2*b
DRUKUJ „wynik:”, c
KONIEC

W tym programie są dwa operatory warunkowe, pierwszy sprawdza warunek równości liczb i jeśli jest on spełniony wyświetli się komunikat o równości liczb, jeśli liczby nie są równe, wówczas sprawdzany jest drugi warunek ...

Przykład: rozwiązywanie równania kwadratowego.
Rozwiązanie równania kwadratowego zależy od wartości dyskryminatora.

REM rozwiązywanie równania kwadratowego
WEJŚCIE "Wprowadź współczynnik a: ", oraz
WEJŚCIE "Wprowadź współczynnik b: ", b
WEJŚCIE "Wprowadź współczynnik c: ", c
d=b*b-4*a*c
JEŚLI D<0 THEN PRINT "Корней нет"
W przeciwnym razie JEŚLI d=0 WTEDY x=-b/(2*a) : WYDRUK "pierwiastek równania: ", x
W przeciwnym razie x1=(-b-SQR(d))/(2*a): x2=(-b+SQR(d))/(2*a) : WYDRUK "pierwiastki równania: ", x1, x2
KONIEC

Warunki logiczne są nazywane prosty, jeśli gałąź ma dwie gałęzie i złożony, jeśli jest więcej niż dwie gałęzie.

I i

Albo albo

Nie nie

Oblicz

Zadanie 1.

Zdefiniuj trójkąt o bokach A, B, C równoramiennych.

WEJŚCIE „Wprowadź wymiary boków trójkąta A, B, C”; A, B, C