Okna.  Wirusy.  Laptopy.  Internet.  Biuro.  Narzędzia.  Kierowcy

„Drukarka do druku kart plastikowych” - Możliwość umieszczenia dwukrotnie większej ilości informacji na jednej karcie plastikowej. Cena. Drukarka do drukowania kart plastikowych. ZEBRA P110i/P120i. Recenzja zakres modeli. Ekonomiczne drukarki pełnokolorowe do druku kart plastikowych. Wysoka wydajność Szeroka gama opcjonalnych urządzeń kodujących.

„Urządzenia peryferyjne do komputera” – Urządzenia peryferyjne. Drukarki. Nagrywać. Aparaty cyfrowe. Hierarchia narzędzi połączeń. Adaptery wideo. Klasyfikacja PU. Uniwersalna magistrala szeregowa. CD-R. Opcje wyboru. Wbudowana lampa błyskowa. Pionierzy. Natura. Modem. Terminal wideo. Skanery. Urządzenia peryferyjne do komputera. Klasyfikacja kształtu myszy.

„Środki wprowadzania i wyprowadzania informacji” - Skaner. Spiskowiec. CRT. Drukarki. Klawiatura. Aparaty cyfrowe i aparaty fotograficzne. Funkcje. Uniwersalne urządzenie wejściowe. Urządzenia wejściowe i wyjściowe informacji. Tablet graficzny. Mysz.

„Urządzenia wyjściowe informacji” - Urządzenie komputerowe. Im wyższa rozdzielczość monitora, tym wyższa jakość obrazu. Wady drukarki atramentowe: Wysokie zużycie atramentu; Wysoki koszt uzupełnienia. Płaskie monitory ciekłokrystaliczne (LCD) są kompaktowe i bezemisyjne. Urządzenia wyjściowe informacji. Monitor jest urządzenie uniwersalne wyjście informacyjne.

„Drukarki” – lokalne. Termoblok, piec, utrwalacz - zespół, w którym toner jest wypalany w papier. Laser. Matryca (w kształcie igły). Z biegiem czasu tracą swoje właściwości i muszą być regularnie wymieniane przez specjalistę. Strumień. Sieć. Zmienione przez użytkownika. Charakterystyka drukarki. Wywoływacz, nośnik, wywoływacz – najmniejsze cząsteczki metalu przenoszące toner na rolkę fotograficzną.

„Podsystem we/wy” – punkt przerwania. Stoły. Ciągłe umieszczanie. Atrybut. Uprawnienia do plików. Połączona lista indeksów. Dane. Organizacja fizyczna. Bezpośredni dostęp do pamięci. Indeksowany plik sekwencyjny. Montowanie. We/wy sterowane przerwaniami. Uprawnienia dostępu do katalogu. Organizacja pracy równoległej.

Łącznie dostępnych jest 27 prezentacji na ten temat

Pierwszym operandem - "wyrażenie1" - może być dowolne wyrażenie, którego wynikiem jest wartość typu bool. Jeśli wynik jest PRAWDA , wówczas wykonywany jest operator określony w drugim operandie, czyli „wyrażenie2”.

Jeśli pierwszy operand jest równy FAŁSZ , wówczas wykonywany jest trzeci operand - „wyrażenie3”. Drugi i trzeci operand, czyli „wyrażenie2” i „wyrażenie3”, muszą zwracać wartości tego samego typu i nie mogą być typu void. Wynikiem wykonania instrukcji warunkowej jest wynik „wyrażenia2” lub wynik „wyrażenia3”, w zależności od wyniku „wyrażenia1”.

Ograniczenia użytkowania operatora

Operator bazujący na wartości „wyrażenie1” musi zwrócić jedną z dwóch wartości – albo „wyrażenie2”, albo „wyrażenie3”. Istnieje wiele ograniczeń dotyczących tych wyrażeń:

  1. Nie można mieszać typu zdefiniowanego przez użytkownika z typem prostym lub wyliczeniem. Dopuszczalne jest użycie NULL dla wskaźnika.
  2. Jeśli typy wartości są proste, typem operatora będzie typ maksymalny (zobacz Wymuszanie typu).
  3. Jeśli jedna z wartości jest typem wyliczeniowym, a druga jest typem numerycznym, to wyliczenie zostaje zastąpione przez int i obowiązuje druga reguła.
  4. Jeżeli obie wartości są wartościami wyliczeniowymi, to ich typy muszą być takie same, a typem operatora będzie wyliczenie.

Ograniczenia dla typów niestandardowych (klas lub struktur):

  1. typy muszą być takie same lub jeden musi dziedziczyć po drugim.
  2. jeśli typy nie są takie same (dziedziczenie), wówczas dziecko jest niejawnie rzutowane na rodzica, to znaczy typem operatora będzie typ rodzica.
  3. Nie można mieszać obiektu i wskaźnika — oba wyrażenia są obiektami lub wskaźnikami. Dopuszczalne jest użycie NULL dla wskaźnika.

Notatka

Należy zachować ostrożność podczas używania operatora warunkowego jako argumentu przeciążonej funkcji, ponieważ typ wyniku operatora warunkowego jest określany w momencie kompilacji programu. Ten typ jest zdefiniowany jako większy typ typów „wyrażenie2” i „wyrażenie3”.

Przykład:

void func(double d) ( Drukuj („podwójny argument: „ ,d); )
void func(string s) ( Drukuj („argument ciągu: „, s); )

bool Wyrażenie1=prawda;
podwójne Wyrażenie2=M_PI;
string Wyrażenie3= "3,1415926" ;

unieważnij OnStart()
{
func(Wyrażenie2);
func(Wyrażenie3);

func(Wyrażenie1?Wyrażenie2:Wyrażenie3);
func(!Wyrażenie1?Wyrażenie2:Wyrażenie3);// pobierz ostrzeżenie kompilatora o jawnym rzutowaniu na typ łańcuchowy
}

// Wynik:
// podwójny argument: 3.141592653589793

// argument ciągu: 3.141592653589793
// argument ciągu: 3.1415926

Operator jest elementem języka, który określa pełny opis czynność do wykonania. Każdy operator jest pełną frazą języka programowania i określa jakiś całkowicie zakończony etap przetwarzania danych. Operatory mogą obejmować słowa funkcyjne, dane, wyrażenia i inne operatory. W angielski tę koncepcję oznaczone słowem „oświadczenie”, które oznacza również „propozycję”.

Każdy operator w dowolnym języku programowania ma swój specyficzny składnia I semantyka. Pod składnia Operator rozumiany jest jako system reguł (gramatyki), który określa jego zapis za pomocą elementów alfabetu tego języka, które wraz z różnymi symbolami obejmuje na przykład słowa funkcyjne. Pod semantyka operator rozumie jego znaczenie, tj. te działania, które odpowiadają zapisowi konkretnego operatora. Na przykład nagrywaj ja:= ja + 1 jest przykładem składniowo poprawnej notacji operator przypisania V Język pascalowy, którego semantyka jest w tym przypadku wygląda następująco: wyodrębnij wartość komórki pamięci odpowiadającej zmiennej i, dodaj ją do jedynki, zapisz wynik do tej samej komórki pamięci.

W większości proceduralnych języków programowania zestaw operatorów jest prawie taki sam i składa się z operatora przypisania, operatorów selekcji, operatorów pętli, operatora wywołania procedury i operatorów skoku. Czasami rozróżnia się także operatory puste (brak akcji) i złożone. Wiele operatorów jest sposobem reprezentowania pewnych konstrukcji algorytmicznych (patrz „ Projekty algorytmiczne”) w języku programowania. Przyjrzyjmy się grupom operatorów bardziej szczegółowo, korzystając ze składni języka Pascal.

Operator przypisania

Przypisanie to czynność komputera, w wyniku której zmienna otrzymuje wartość obliczonego wyrażenia (jest umieszczana w komórce pamięci odpowiadającej zmiennej). Aby opisać takie działanie w językach programowania, istnieje operator przypisania.

W widok ogólny Operator przypisania zapisuje się w następujący sposób:

<переменная> <знак присваивания> <выражение>

Na przykład w języku Pascal jako znak przypisania używana jest kombinacja symboli: =. W wielu innych językach jest to znak równości.

Efektem wykonania operatora przypisania jest zmiana stanu danych: wszystkich zmiennych innych niż zmienny, znajdujące się po lewej stronie operatora przypisania, nie zmieniają ich znaczenia, lecz określone zmienny dostaje wartość wyrażenia, znajdujący się po prawej stronie operatora przypisania. W większości przypadków wymagane jest podanie typu wyrażenia pasował do typu zmienny. Jeżeli tak nie jest, to albo uznaje się, że operator jest niepoprawny składniowo, albo typ wyrażenia jest konwertowany na typ zmiennej (patrz „ Typy danych” ).

Operatory selekcji

Operatory te nazywane są inaczej instrukcje warunkowe. Instrukcje warunkowe służą do programowania algorytmów zawierających konstrukcję rozgałęzienia algorytmicznego.

W językach programowania istnieje kilka typów instrukcji warunkowych. Pełna instrukcja warunkowa odpowiada strukturze algorytmicznej pełnego rozgałęzienia:

W języku programowania odpowiedni operator warunkowy ma postać:

jeśli B Następnie S1 w przeciwnym razie S2

Jeśli wyrażenie B, która jest obliczana na początku wykonania instrukcji warunkowej, ma wartość „true”, wówczas instrukcja zostanie wykonana S1, w przeciwnym razie - operator S2. Operatorzy S1 I S2 może być złożony.

Algorytmiczna struktura niepełnego rozgałęzienia jest realizowana za pomocą niepełnego operatora warunkowego, który ma postać:

jeśli B Następnie S

Tutaj B jest wyrażeniem logicznym, oraz S- dowolny operator. Operator S zostanie wykonane, jeśli wyrażenie B będzie prawdziwe.

Jeśli operator warunkowy implementuje tylko dwie gałęzie wyboru („tak” i „nie”), to używa operatora wariantowego (sprawa-operator) można zaprogramować strukturę wielogałęziową. Operator wariantu wygląda następująco:

sprawa E z

W toku tego operatora w ten sposób: znaczenie wyrażenia mi przeszukiwane wśród wartości znajdujących się w rekordzie operatora V1, V2, …, Vn, a jeśli taka wartość zostanie znaleziona, wykonywany jest odpowiedni operator S1, S2, …, Sn.

W różnych językach programowania składnia, a nawet semantyka wymienionych operatorów może się różnić, ale możliwości zapewniane programiście przez takie konstrukcje są w przybliżeniu takie same.

Przykład 1. W artykule „ Projekty algorytmiczne”2 podano przykład napisania algorytmu rozwiązywania uogólnionego równania kwadratowego za pomocą konstrukcji rozgałęziających. Oto fragment programu w Pascalu, który implementuje ten sam algorytm:

Jeśli a = 0 Następnie

Jeśli b = 0 Następnie

jeśli c = 0 Następnie writeln("x - dowolny")

w przeciwnym razie writeln("bez korzeni")

w przeciwnym razie napiszln(-c/b)

inaczej zacznij

D:= b*b - 4*a*c;

Jeśli D< 0 Następnie writeln("bez korzeni")

inaczej zacznij

x1:= -b + sqrt(D);

x2:= -b - sqrt(D);

writeln(x1:0:2,""", x2:0:2)

Instrukcje pętli

Operatory pętli implementują cykliczne struktury algorytmiczne; wykorzystywane są do działań, które powtarzają się wielokrotnie. W wielu językach programowania istnieją trzy typy operatorów pętli: „z warunkiem wstępnym”, „z warunkiem końcowym”, „z parametrem”.

Niezbędną i wystarczającą strukturą algorytmiczną dla pętli programistycznych jest pętla „z warunkiem wstępnym”, dlatego można ją nazwać pętlą głównego typu. Operator pętli z warunkiem wstępnym wygląda następująco:

podczas gdy B Do S

Operator S, dla którego tworzona jest pętla do wielokrotnego wykonania, nazywa się ciało pętli. Wykonanie operatora pętli sprowadza się do wielokrotnego wykonywania treści pętli aż do osiągnięcia wartości wyrażenia logicznego B prawda (aż stanie się fałszywa). W rzeczywistości podobne instrukcje pętlowe implementują wielokrotne wykonywanie instrukcji warunkowych Jeśli B Następnie S, gdy warunek jest prawdziwy B.

Przykład 2. Rozważ użycie takiego operatora pętli do obliczenia sumy cyfr liczby naturalnej N:

chwila N>0 zacznij

S:= S + N mod 10;

N:=N div 10

W pętli z warunkiem końcowym treść pętli poprzedza warunek B. W przeciwieństwie do pętli z warunkiem wstępnym, tutaj B jest warunkiem zakończenia pętli. Operator pętli z warunkiem końcowym w Pascalu ma postać:

powtórz S dopóki B

Przy takiej organizacji cyklu, jest to treść cyklu S należy wykonać przynajmniej raz.

W prawie wszystkich językach proceduralnych istnieje operator pętli z parametrem. Można to przedstawić schematycznie w następujący sposób:

Do< zmienny > E1 Do E2 krok E3 Do S

Oto znaczenie zmienny(parametr cyklu) zmienia się z wartości wyrażenia E1 na E2 w krokach E3. Dla każdej takiej wartości parametru pętli wykonywany jest operator S. W języku Pascal w opisie tego operatora nie ma pojęcia kroku, a sam krok dla parametru pętli będącego liczbą całkowitą może być równy 1 lub . –1. Operator „pętla z parametrem” służy do programowania pętli z określoną liczbą powtórzeń. Nie nadaje się do programowania pętli iteracyjnych (których liczba powtórzeń nie jest z góry znana).

Operator wywołania procedury

W artykule „ Podprogramy” opisuje szczegółowo ten typ podprogramu, zwany procedurą. Standardowe procedury języka programowania zawarte w jednej z bibliotek procedur, a także procedury użytkownika opisane w tym bloku, wywoływane są za pomocą operatora wywołanie procedury:

<имя процедуры>(E1,E2,…,En)

Tutaj E1, E2,…, En są zmiennymi lub wyrażeniami, które reprezentują rzeczywiste parametry dostęp do procedury. Najczęściej używane standardowe procedury to procedury wejścia i wyjścia danych (odczyt i zapis w Pascalu).

Wywołanie procedury jest semantycznie równoznaczne z wykonaniem bloku opisanego jako ciało procedury, po przekazaniu do niego początkowych wartości niektórych zmiennych (parametrów wartości) lub zastąpieniu nazw niektórych zmiennych (parametrów zmiennych) nazwami aktualne zmienne określone podczas wywoływania procedury.

Przykład 3. Opiszmy procedurę abc:

procedura abc(a,b:liczba całkowita; odm c: liczba całkowita);

Wywołanie tej procedury abc(2,3,x) jest równoznaczne z blokiem akcji:

Operatorzy skoków

Najbardziej znanym operatorem w tej grupie jest operator bezwarunkowego skoku muszę. Jeśli dodasz do wszystkich lub niektórych istniejących instrukcji programu tagi, wówczas w programie możliwe staje się zastosowanie operatora przejścia w postaci:

muszę<метка>

Etykieta w tym przypadku odpowiada początkowi instrukcji, od której należy kontynuować wykonywanie programu. Taki operator pozwala na pisanie algorytmów w języku programowania, które mają charakter dowolny złożona struktura. Ale często stosowanie bezwarunkowego przejścia jest nieuzasadnione, ponieważ prowadzi do zagmatwanego i trudnego do odczytania programu. Prawie jedyne sensowne zastosowanie operatora muszę jest wyjściem z kilku zagnieżdżonych pętli jednocześnie, na przykład podczas przetwarzania tablic dwuwymiarowych.

Przykład 4. Załóżmy, że musimy ustalić, czy istnieje tablica dwuwymiarowa element równy 0:

Do ja:= 1 Do N Do

dla j:= 1 Do N Do

jeśli a = 0 potem zacznij

1: Jeśli B Następnie napisz("jest") w przeciwnym razie napisz("nie");

Program opracowany zgodnie z zasadami programowania strukturalnego nie powinien zawierać operatorów skoków bezwarunkowych. Powyższy program bez użycia operatora muszę można przepisać w następujący sposób:

podczas gdy nie B I(I< N) zacznij

podczas gdy nie B I(J< N) zacznij

Jeśli a = 0 Następnie b:= prawda;

Jeśli B Następnie napisz("jest") w przeciwnym razie napisz("nie");

W tym przypadku program strukturalny jest mniej wizualny niż program z muszę.

Inne operatory skoków można zdefiniować w językach programowania. Na przykład w Pascalu: przerwa(wcześniejsze przerwanie pętli, przejście do instrukcji, która musi zostać wykonana po zakończeniu pętli), Kontynuować(wcześniejsze zakończenie bieżącej iteracji pętli i przejście do kolejnej), Wyjście(wcześniejsze przerwanie podprogramu, wyjście z niego), postój(wcześniejsze przerwanie programu, przejście do jego zakończenia). Podobne operatory istnieją w językach C, C++ i Java.

Operator złożony

Instrukcja złożona to grupa instrukcji zawarta w nawiasy operatora(w Pascalu - zaczynaćkoniec; w C, C++ - (…)).

Operator złożony został wprowadzony do języków programowania, aby ułatwić opis konstrukcji językowych. Na przykład w Pascalu wykonywalna część każdego bloku (programu, procedury, funkcji) jest jedną instrukcją złożoną. Dokładnie w ten sam sposób ciało dowolnego operatora pętli składa się tylko z jednego operatora, być może złożonego. Alternatywą dla operatora złożonego może być słowo funkcyjne wskazujące koniec konkretnego operatora, np. KONIEC JEŚLI w języku podstawowym.

Temat „Operatory języka programowania” jest zwykle studiowany tylko w kontekście konkretnego języka programowania. Przy rozważaniu tego ważne jest pokazanie powiązania pomiędzy podstawowymi konstrukcjami algorytmicznymi a operatorami: konstrukcje algorytmiczne pisane są w języku programowania przy użyciu odpowiednich operatorów. Wyjątkiem jest w pewnym sensie konstrukcja sekwencyjna, która wyznacza liniowy porządek działań. Działania w trybie ścisłym program liniowy są implementowane wyłącznie przez operatory przypisania i operatory wywołań procedur.

NA etap początkowy Dzieci w wieku szkolnym mają wiele problemów z nauką programowania. Pierwszą barierą psychologiczną, jaką muszą pokonać, jest nauka operatora przypisania. Jednym z głównych zadań, które musisz rozwiązać wspólnie ze swoimi uczniami, jest zamiana wartości dwóch zmiennych. Możesz poprosić uczniów, aby mentalnie rozwiązali problem zamiany zawartości dwóch szuflad, na przykład biurka. Zazwyczaj na tym etapie dyskusji uczniowie zdają sobie sprawę, że do rozwiązania problemu potrzebne jest trzecie pole (zmienna). Jednak pisząc ten algorytm często mylą się, w której części operatora przypisania (lewej czy prawej) powinna pojawić się konkretna zmienna.

Błędy w pisaniu wyrażeń arytmetycznych i logicznych wynikają z nieznajomości pierwszeństwa operacji używanych w wyrażeniu. Jednocześnie operacje oznaczają nie tylko arytmetykę, ale także operacje porównania i spójniki logiczne, a w języku C także operację przypisania, co jest bardzo nietypowe dla uczniów. Sytuację komplikuje fakt, że w różnych językach programowania te same operacje mają różne względne priorytety. Należy także zwrócić uwagę na zgodność typów zmiennej z wyrażeniem po lewej i prawej stronie operatora przypisania (patrz „ Typy danych”).

Podczas opanowywania operatorów selekcji przydatne jest, aby uczestnicy kursu zaprogramowali algorytm zawierający strukturę wielogałęziową, zarówno przy użyciu kombinacji instrukcji warunkowych, jak i przy użyciu operatora selekcji.

Przykład. Do zmiennej całkowitej N Wprowadź wiek osoby w latach. Wpisz frazę „ Mam K lat”, zastępując słowo lata NA rok Lub rok w zależności od numeru K. Oto dwa rozwiązania tego problemu:

Jeśli(k mod 100) W

Następnie writeln("Mam ",k", lat")

sprawa k mod 10 z

0,5..9:writeln("Mam ",k", lat");

1:writeln("Mam ",k", lat");

2..4:writeln("Mam ",k", lat");

var k, n: liczba całkowita;

czytajln(k); n:= k mod 10;

Jeśli(k mod 100) W

Następnie writeln("Mam ",k", lat") w przeciwnym razie

Jeśli n=1 Następnie writeln("Mam ",k", lat")

Jeśli(n>=) I(N<= 4)

Następnie writeln("Mam ",k", lat")

w przeciwnym razie writeln("Mam ",k", lat")

Rozważając operatory pętli, warto zaproponować zaprogramowanie tego samego zadania na trzy różne sposoby przy użyciu trzech operatorów pętli i odwrotnie, w oparciu o warunki problemu, nauczyć się określać, który operator pętli jest najodpowiedniejszy w konkretnym przypadku sprawa.

Operator wywołania procedury jest na pierwszy rzut oka prosty. W tym miejscu ważne jest wyjaśnienie zasad przekazywania parametrów do procedur i funkcji, różnica pomiędzy parametrami zmiennych a parametrami wartości (w tym drugim przypadku możemy przekazać nie tylko nazwę zmiennej, ale także stałą lub nawet wyrażenie odpowiadającej jej wartości) typ). Parametry formalne i faktyczne muszą odpowiadać rodzajowi, a nie nazwie, co dla studentów nie jest oczywiste.

Przestudiowanie instrukcji warunkowej, a zwłaszcza instrukcji złożonej, jest dobrą okazją do porozmawiania z uczniami o stylu pisania programów. Istnieje kilka powszechnych sposobów pisania programów strukturalnych w Pascalu, ale wszystkie zawierają wcięcia umożliwiające dostosowanie zagnieżdżonych struktur. Ważne przy nagrywaniu programów i komentarzy.

Wyjście danych
Wyprowadzanie danych z BARAN na ekranie monitora:
pisać
(<выражение 1> ,< выражение 2> , ...,< выражение N>)
lista wyjściowa
Wyrażenia - symboliczne, numeryczne, logiczne,
łącznie ze zmiennymi i stałymi
Przykład:
napisz("s=", s).
Dla s=15 na ekranie pojawi się: s=15.
Informacje ujęte w cudzysłów są wyświetlane na ekranie
żadnych zmian

Opcje organizacji wyników
Opcja
organizacja wycofania
Brak separatorów
Operator wnioskowania
napisz (1, 20, 300).
Wynik
120300
Dodaj ograniczniki, napisz (1, ’,’ , 20,
– przecinki
’, ’, 300)
1, 20, 300
Dodaj ograniczniki, napisz (1, „”, 2, „”, 3)
– spacje
1 20 300

Format wyjściowy
Format wyjściowy umożliwia ustawienie liczby pozycji
na ekranie zajmowanym przez wyświetlaną wartość.
napisz(s:x:y)
x – łączna liczba stanowisk przypisanych do danego numeru;
y - liczba pozycji w części ułamkowej liczby.
Operator wnioskowania
Wynik wykonania
operator
write(‘s=’, s:2:0);
s=15
write(‘s=’, s:3:1);
s=15,0
write(‘s=’, s:5:1);
s=
napisz
15.0
- wyjście z nowej linii!

Pierwszy program
program n_1;
stała pi=3,14;
var r, c, s: rzeczywisty;
zaczynać
r:=5,4;
c:=2*pi*r;
Wynik programu:
s:=pi*r*r;
writeln("c="", c:6:4);
writeln("s=", s:6:4)
Turbo Pascala
Wersja 7.0
koniec.
c =33,9120
s = 91,5624

Wejście z klawiatury
Wprowadzanie wartości zmiennych do pamięci RAM:
Czytać
(<имя переменной1>, …, <имя переменной N>)
lista wejściowa
Wykonanie czytaj operatora:
1) komputer przechodzi w tryb czuwania danych:
2) użytkownik wprowadza dane z klawiatury:
wiele wartości zmiennych
można wprowadzić typy numeryczne
oddzielone spacją lub przecinkiem;
podczas wprowadzania zmiennych znakowych
Nie można używać spacji i przecinków;
3) użytkownik naciska klawisz Enter.

Wejście z klawiatury
!
Typy wartości wejściowych muszą być zgodne
typy zmiennych określone w sekcji opisu
zmienne.
var i, j: integer;x: real;a: char;
czytaj (i, j, x, a);
opcje organizacji strumienia wejściowego:
1 0 2,5 A 1,0 1
2,5, A 0
2.5
A
Po wykonaniu instrukcji readln kursor przesuwa się do
nowa linia.

Ulepszony program
program n_1;
stała pi=3,14;
var r, c, s: rzeczywisty;
zaczynać
writeln("Oblicz obwód i pole koła");
write("Wpisz r>>");
czytajln(r);
c:=2*pi*r;
Wynik programu:
s:=pi*r*r;
writeln("c="", c:6:4);
Wersja Pascala 7.0
writeln("s=", s:6:4) Turbo
Obliczanie obwodu i pola koła
Wpisz r>> 8.5
koniec.
c =53,3800
s =226,8650

Najważniejsze
Aby wprowadzić wartości zmiennych do pamięci RAM
Stosowane są operatory wejściowe read i readln.
Aby wyświetlić dane z pamięci RAM na ekranie
Monitor używa operatorów wyjściowych write i writeln.
Konieczne jest wprowadzanie danych początkowych i wyprowadzanie wyników
być zorganizowane w sposób przejrzysty i wygodny; to zapewnia
przyjazność interfejsu użytkownika.

Pytania i zadania
1) Biorąc pod uwagę fragment programu:
a:=10; b:=a+1: a:=b–a; napisz (a, b)
Jakie liczby zostaną wyświetlone na ekranie komputera?
2) Opisać zmienne potrzebne do obliczeń
obszar trójkąta wzdłuż jego trzech boków, oraz
napisz oświadczenie zawierające dane wejściowe
niezbędne dane początkowe.
3) Jaki jest rezultat wykonania instrukcji?
a) napisz (a)
b) napisz("a")
c) napisz("a=", a)
4) Należy przypisać zmienne całkowite i, j, k
odpowiednio wartości wynoszą 10, 20 i 30.
Zapisz instrukcję wejściową odpowiadającą wejściu
strumień:
a) 20 10 30
b) 30 20 10
c) 10,30,20

W poprzednim akapicie zapoznaliśmy się ze strukturą programu w Pascalu, nauczyliśmy się opisywać dane i przyjrzeliśmy się operatorowi przypisania. To wystarczy, aby napisać program do konwersji danych. Ale rezultat tych przemian nie będzie dla nas widoczny.

Aby wyprowadzić dane z pamięci RAM na ekran monitora, użyj operatora zapisu wyjściowego:

Tutaj w nawiasach umieszczona jest lista wyjściowa - lista wyrażeń, których wartości są drukowane. Mogą one być numeryczne, symboliczne lub wyrażenia logiczne, w tym zmienne i stałe.

Dowolny zestaw znaków ujętych w apostrofy jest uważany za stałą łańcuchową. Stała łańcuchowa może zawierać dowolne znaki wpisywane na klawiaturze.

Przykład. Instrukcja write („s=" , s) jest wykonywana w następujący sposób:

  1. Na ekranie wyświetlane są symbole ujęte w apostrofy: s=
  2. Na ekranie wyświetlana jest wartość zmiennej zapisanej w komórce RAM o nazwie s.

Jeżeli wartość zmiennej s wynosi 15 i jest ona typu całkowitego, to na ekranie wyświetli się: s=15.

Jeżeli wartość zmiennej s wynosi 15, ale jest ona typu rzeczywistego, to na ekranie pojawi się informacja: s=l.5E+01.

Po wykonaniu instrukcji wyjściowej wszystkie elementy listy wyjściowej są drukowane bezpośrednio po sobie. Zatem w wyniku działania operatora zapisu (1, 20, 300) na ekranie zostanie wyświetlony ciąg liczb 120300, który będzie przez nas postrzegany jako liczba 120300, a nie jako trzy odrębne stałe numeryczne. Dane wyjściowe można uczynić bardziej dostępnymi dla percepcji na różne sposoby:

Format wyjściowy to liczba całkowita wskazywana po dwukropku, która określa, ile pozycji na ekranie powinna zajmować wyświetlana wartość. Jeżeli w liczbie jest mniej cyfr niż zarezerwowanych dla niej pozycji na ekranie, to wolne pozycje uzupełniane są spacjami po lewej stronie liczby. Jeżeli liczba podana w formacie wyjściowym po dwukropku jest mniejsza niż to konieczne, zostanie automatycznie zwiększona do wymaganego minimum.

Aby wyprowadzić liczbę rzeczywistą w formacie stałoprzecinkowym, na liście wyników dla każdego wyrażenia określone są dwa parametry:

  1. łączna liczba stanowisk przypisanych do danego numeru;
  2. liczba pozycji w części ułamkowej liczby.

Kiedy wykonywana jest nowa instrukcja zapisu, dane wyjściowe są kontynuowane w tym samym wierszu. Aby dokonać przejścia do nowa linia, używany jest operator writeln. Nie ma innych różnic pomiędzy instrukcjami write i writeln.

4.2.2. Pierwszy program w języku Pascal

Korzystając z omówionych powyżej operatorów, utworzymy program obliczający obwód i pole koła o promieniu 5,4 cm.

Początkowymi danymi w tym zadaniu jest promień: r - 5,4 cm. Wynikiem programu powinny być wartości C - obwód i S - pole koła. C, S i r są wielkościami typu rzeczywistego.

Dane początkowe i wyniki powiązane są zależnościami znanymi z zajęć z matematyki: C = 2πr, S = πr +. Program realizujący obliczenia z wykorzystaniem tych wzorów będzie wyglądał następująco:

Ten program jest poprawny i rozwiązuje problem. Po uruchomieniu otrzymasz następujący wynik:

Mimo to skompilowany przez nas program ma znaczną wadę: znajduje obwód i pole koła dla pojedynczej wartości promienia (5,4 cm).

Aby obliczyć obwód i pole koła dla innej wartości promienia, należy wprowadzić zmiany bezpośrednio w tekście programu, a mianowicie zmienić operator przypisania. Dokonywanie zmian w istniejącego programu przynajmniej nie zawsze jest wygodne (na przykład, gdy program jest duży i istnieje wiele operatorów przypisania). Poniżej zapoznasz się z operatorem, który pozwala na wprowadzenie danych początkowych w trakcie działania programu, bez zmiany tekstu programu.

4.2.3. Wejście z klawiatury

Aby wprowadzić wartości zmiennych do pamięci RAM, użyj operatora odczytu wejścia:

Po wykonaniu instrukcji read komputer przechodzi w tryb oczekiwania na dane: użytkownik musi wprowadzić dane z klawiatury i nacisnąć klawisz Enter. Można wprowadzić wiele wartości zmiennych typu numerycznego, oddzielając je spacjami lub przecinkami. Podczas wprowadzania zmiennych znakowych spacje i przecinki są traktowane jak znaki i nie można ich wprowadzać.

Pierwsza wartość zmiennej wprowadzona przez użytkownika jest umieszczana w komórce pamięci, której nazwa znajduje się jako pierwsza na liście wejść itp. Dlatego typy wartości wejściowych (strumień wejściowy) muszą odpowiadać typom zmiennych określonym w zmiennej sekcja opisowa.

Przykład. Pozwalać

var i, j: liczba całkowita; x: prawdziwy; a:znak;

Przypiszmy zmiennym i, j, x oraz wartościom 1, 0, 2,5 i „A”. W tym celu użyjemy operatora read (i, j, x, a) i zorganizujemy strumień wejściowy w jeden z poniższych sposobów:

Tutaj nie tylko użyliśmy różnych ograniczników (spacja, przecinek), ale także przedstawiliśmy strumień wejściowy jako jedną, dwie i cztery linie.

Do wprowadzania danych z klawiatury można także użyć operatora readln, który różni się od operatora read jedynie tym, że po jego wykonaniu kursor przesuwa się do nowej linii.

Ulepszmy program n_1 organizując w nim wprowadzanie danych za pomocą operatora odczytu. Aby użytkownik wiedział, do czego przeznaczony jest program i rozumiał, jakiej akcji oczekuje od niego komputer, wyświetlimy odpowiednią wiadomości tekstowe używając operatora writeln:

Efekt ulepszonego programu:

Teraz nasz program może obliczyć obwód i pole koła dla dowolnej wartości r. Innymi słowy, rozwiązuje nie pojedynczy problem, ale całą klasę problemów. Ponadto program w przejrzysty i wygodny sposób organizuje wprowadzanie danych początkowych i wyprowadzanie uzyskanych wyników. Zapewnia to przyjazny interfejs użytkownika.

Najważniejsze

Aby wprowadzić wartości zmiennych do pamięci RAM, używane są operatory wejściowe read i readln.

Aby wyprowadzić dane z pamięci RAM na ekran monitora, używane są operatory zapisu i zapisu wyjścia.

Wprowadzanie danych początkowych i wyprowadzanie wyników powinno być zorganizowane w sposób jasny i wygodny; zapewnia to przyjazny interfejs użytkownika.

Pytania i zadania

  1. Napisz instrukcję umożliwiającą wprowadzenie wartości zmiennej sumy podczas działania programu.
  2. Zmiennym całkowitym i, y, k należy przypisać odpowiednio wartości 10, 20 i 30. Zapisz instrukcję wejściową odpowiadającą strumieniowi wejściowemu:
      a) 20 10 30
      b) 30 20 10
      c) 10 30 20
  3. Opisz zmienne potrzebne do obliczenia pola trójkąta na podstawie jego trzech boków i napisz instrukcję, która poda wymagane dane wejściowe.
  4. Jaki jest rezultat wykonania instrukcji?
      a) napisz (a)
      b) napisz (1 a „)
      c) napisz (1 a=1, a)
  5. Jakiego typu jest zmienna f, jeśli po wykonaniu instrukcji write (f) na ekranie wyświetli się następująca liczba?
      a) 125
      b) 1,25E+2
  6. Jak wyświetlić liczbę rzeczywistą w formacie stałoprzecinkowym?
  7. Zapisz operatory służące do wprowadzania dwóch liczb i wyprowadzania ich w odwrotnej kolejności.
  8. Biorąc pod uwagę fragment programu:

    przeczytaj(a); przeczytaj (b); c:=a+b; napisz(a, b); napisz (c)

    Uprość to, zmniejszając liczbę instrukcji wejściowych i wyjściowych.

  9. Biorąc pod uwagę fragment programu:

    a:=10; b:=a+l: a:=b-a; napisz (a, b)

    Jakie liczby zostaną wyświetlone na ekranie komputera?

  10. Napisz program obliczający pole i obwód prostokąta na podstawie jego dwóch boków.


Jeśli zauważysz błąd, zaznacz fragment tekstu i naciśnij Ctrl+Enter
UDZIAŁ: