Kako podesiti pametne telefone i računare. Informativni portal
  • Dom
  • OS
  • Uslovni operator? Pisanje programskog koda korišćenjem procedura za unos podataka sa tastature.

Uslovni operator? Pisanje programskog koda korišćenjem procedura za unos podataka sa tastature.

Operater je jezički element koji specificira potpuni opis radnje koju treba izvršiti. Svaki operator je potpuna fraza programskog jezika i definira neku potpuno završenu fazu obrade podataka. Operatori mogu uključivati ​​funkcijske riječi, podatke, izraze i druge operatore. Na engleskom se ovaj koncept označava riječju “statement”, što također znači “rečenica”.

Svaki operator u bilo kom programskom jeziku ima svoje specifičnosti sintaksa I semantika. Ispod sintaksa Operator se shvata kao sistem pravila (gramatika) koji određuje njegovo snimanje pomoću elemenata abecede datog jezika, koji, uz različite simbole, uključuje, na primer, funkcijske reči. Ispod semantika operator razume njegovo značenje, tj. one radnje koje odgovaraju zapisu određenog operatera. Na primjer, snimite i:= i + 1 je primjer sintaksički ispravne notacije operator dodjeljivanja u jeziku Pascal, čija je semantika u ovom slučaju sljedeća: izdvojiti vrijednost memorijske ćelije koja odgovara promjenljivoj i, dodati je s jednom i zapisati rezultat u istu memorijsku ćeliju.

U većini proceduralnih programskih jezika, skup operatora je skoro isti i sastoji se od operatora dodjeljivanja, operatora odabira, operatora petlje, operatora poziva procedure i operatora skoka. Ponekad se razlikuju i prazni (bez akcije) i složeni operatori. Mnogi operatori su način predstavljanja određenih algoritamskih konstrukcija (pogledajte “ Algoritamski dizajni” ) u programskom jeziku. Pogledajmo grupe operatora detaljnije koristeći sintaksu jezika Pascal.

Operator dodjele

Dodjela je radnja računala kao rezultat koje varijabla prima vrijednost izračunatog izraza (stavlja se u memorijsku ćeliju koja odgovara varijabli). Da bismo opisali takvu akciju u programskim jezicima, postoji operator dodjeljivanja.

Općenito, operator dodjeljivanja se piše ovako:

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

Na primjer, u Pascalu se kombinacija simbola koristi kao znak dodjele: =. U brojnim drugim jezicima to je znak jednakosti.

Rezultat izvršavanja operatora dodjeljivanja je promjena stanja podataka: sve varijable osim varijabla, koji se nalaze na lijevoj strani operatora dodjeljivanja, ne mijenjaju svoje značenje, već specificirano varijabla dobija vrijednost izrazi, koji se pojavljuje na desnoj strani operatora dodjeljivanja. U većini slučajeva potrebno je da tip izrazi odgovara tipu varijabla. Ako to nije slučaj, onda se operator ili smatra sintaktički neispravnim, ili se tip izraza pretvara u tip varijable (pogledajte “ Tipovi podataka” ).

Operatori odabira

Ovi operatori se nazivaju drugačije uslovne izjave. Uslovni izrazi se koriste za programiranje algoritama koji sadrže algoritamsku konstrukciju grananja.

U programskim jezicima postoji nekoliko tipova uslovnih iskaza. Potpuni uslovni iskaz odgovara algoritamskoj strukturi punog grananja:

U programskom jeziku, odgovarajući uslovni operator ima oblik:

ako B onda S1 ostalo S2

Ako izraz B, koji se izračunava na početku izvršenja uslovnog izraza, ima vrijednost "true", tada će se naredba izvršiti S1, inače - operator S2. Operateri S1 I S2 može biti složen.

Algoritamska struktura nepotpunog grananja implementirana je korištenjem nepotpunog uvjetnog operatora, koji ima oblik:

ako B onda S

Evo B je logičan izraz, i S- proizvoljni operator. Operater Sće se izvršiti ako je izraz B istinit.

Ako uslovni operator implementira samo dvije grane izbora (“da” i “ne”), tada se koristi varijantni operator (slučaj-operator) možete programirati strukturu sa više grana. Operator varijante izgleda ovako:

slučaj E of

Ovaj operator se izvršava ovako: vrijednost izraza E pretraživali među vrijednostima navedenim u zapisu operatora V1, V2, …, Vn, i ako je takva vrijednost pronađena, tada se izvršava odgovarajući operator S1, S2, …, Sn.

U različitim programskim jezicima, sintaksa, pa čak i semantika navedenih operatora mogu se razlikovati, ali mogućnosti koje takve konstrukcije pružaju programeru su približno iste.

Primjer 1. U članku “ Algoritamski dizajni”2 dat je primjer pisanja algoritma za rješavanje generalizirane kvadratne jednadžbe korištenjem konstrukcija grananja. Evo fragmenta programa u Pascalu koji implementira isti algoritam:

ako a = 0 onda

ako b = 0 onda

ako je c = 0 onda writeln("x - bilo koji")

ostalo writeln("bez korijena")

ostalo upis (-c/b)

inače početi

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

ako D< 0 onda writeln("bez korijena")

inače početi

x1:= -b + sqrt(D);

x2:= -b - sqrt(D);

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

Naredbe petlje

Operatori petlje implementiraju cikličke algoritamske strukture; koriste se za akcije koje se ponavljaju mnogo puta. U mnogim programskim jezicima postoje tri tipa operatora petlje: „sa preduslovom“, „sa postuslovom“, „sa parametrom“.

Neophodna i dovoljna algoritamska struktura za programiranje petlji je petlja „sa preduslovom“, pa se može nazvati glavnim tipom petlje. Operator petlje sa preduslovom izgleda ovako:

dok je B uradi S

Operater S, za koji se kreira petlja za ponovno izvršavanje se poziva tijelo petlje. Izvršenje operatora petlje se svodi na ponovno izvršavanje tijela petlje do vrijednosti logičkog izraza B istinito (sve dok ne postane lažno). U stvari, slični izrazi petlje implementiraju ponovljeno izvršavanje uslovnih izraza ako B onda S, dok je uslov tačan B.

Primjer 2. Razmotrimo upotrebu takvog operatora petlje za izračunavanje zbira znamenki prirodnog broja N:

dok N>0 počnite

S:= S + N mod 10;

N:= N div 10

U petlji sa postuslovom, tijelo petlje prethodi uvjetu B. Za razliku od petlje sa preduvjetom, ovdje je B uslov za završetak petlje. Operator petlje sa postuslovom u Pascalu ima oblik:

ponoviti S do B

Sa ovom organizacijom ciklusa, tijelo ciklusa S mora se izvršiti najmanje jednom.

U skoro svim proceduralnim jezicima postoji operator petlje sa parametrom. Može se shematski predstaviti ovako:

za< varijabla > E1 to E2 korak E3 uradi S

Evo značenja varijabla(parametar ciklusa) se mijenja od vrijednosti izraza E1 do E2 u koracima od E3. Za svaku takvu vrijednost parametra petlje izvršava se operator S. U jeziku Pascal koncept koraka je odsutan u opisu ovog operatora, a sam korak za cjelobrojni parametar petlje može biti jednak ili 1 ili –1. Operator “petlja s parametrom” se koristi za programiranje petlji sa određenim brojem ponavljanja. Nije pogodan za programiranje iterativnih petlji (čiji je broj ponavljanja unaprijed nepoznat).

Procedura poziva operatera

U članku “ Potprogrami” detaljno opisuje ovu vrstu potprograma, kao što su procedure. Standardne rutine programskog jezika koje su uključene u jednu od biblioteka rutina, kao i korisničke rutine opisane unutar ovog bloka, pozivaju se pomoću operatora poziv procedure:

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

Ovdje su E1,E2,…,En varijable ili izrazi koji predstavljaju stvarni parametri pristup proceduri. Najčešće korištene standardne rutine su rutine za unos i izlaz (čitanje i pisanje u Pascalu).

Pozivanje procedure je semantički ekvivalentno izvršavanju bloka opisanog kao tijelo procedure, nakon što se u njega prenesu početne vrijednosti nekih varijabli (vrijednostnih parametara) ili zamjene imena nekih varijabli (parametara varijabli) s imenima varijabli. stvarne varijable navedene pri pozivanju procedure.

Primjer 3. Hajde da opišemo proceduru abc:

procedura abc(a,b:integer; var c: cijeli broj);

Pozivanje ove procedure abc(2,3,x) je ekvivalentno bloku akcije:

Operatori skoka

Najpoznatiji operator u ovoj grupi operatora je operator bezuslovnog skoka idi. Ako dodate svim ili nekim od postojećih programskih izraza oznake, tada u programu postaje moguće koristiti operator tranzicije oblika:

idi<метка>

Oznaka u ovom slučaju odgovara početku izraza iz kojeg treba nastaviti izvršavanje programa. Ovaj operator vam omogućava da pišete algoritme u programskom jeziku koji imaju proizvoljno složenu strukturu. Ali često je upotreba bezuslovne tranzicije neopravdana, jer dovodi do zbunjujućeg, teško čitljivog programa. Gotovo jedina smislena upotreba operatora idi je izlaz iz nekoliko ugniježđenih petlji odjednom, na primjer, prilikom obrade dvodimenzionalnih nizova.

Primjer 4. Pretpostavimo da moramo utvrditi da li dvodimenzionalni niz a sadrži element jednak 0:

za i:= 1 to N uradi

za j:= 1 to N uradi

ako je a = 0 onda počni

1: ako b onda napiši("je") ostalo write("ne");

Program razvijen prema pravilima strukturiranog programiranja ne bi trebao sadržavati bezuvjetne operatore skoka. Gore navedeni program bez korištenja operatora idi može se prepisati na sljedeći način:

dok ne b i(i< N) počnite

dok ne b i(j< N) počnite

ako a = 0 onda b:= istina;

ako b onda napiši("je") ostalo write("ne");

U ovom slučaju, strukturirani program je manje vizualan od programa s kojim idi.

Drugi operatori skoka mogu biti definirani u programskim jezicima. Na primjer, u Pascalu: break(rani prekid petlje, prijelaz na naredbu koja se mora izvršiti nakon završetka petlje), nastaviti(rani završetak trenutne iteracije petlje i prelazak na sljedeću), Izlaz(rani prekid potprograma, izlazak iz njega), stani(rani prekid programa, prelazak na njegov kraj). Slični operatori postoje u jezicima C, C++ i Java.

Složeni operater

Složeni iskaz je grupa naredbi zatvorenih u operatorske zagrade (u Pascalu - početikraj; u C, C++ - (…)).

Složeni operator je uveden u programske jezike kako bi se olakšao opis jezičkih konstrukcija. Na primjer, u Pascalu, izvršni dio svakog bloka (programa, procedure, funkcije) je jedan složeni izraz. Na potpuno isti način, tijelo svakog operatora petlje sastoji se od samo jednog operatora, možda složenog. Alternativa složenom operatoru može biti funkcijska riječ koja označava kraj određenog operatora, na primjer, END IF na osnovnom jeziku.

Tema “Operatori programskog jezika” se obično proučava samo u kontekstu određenog programskog jezika. Prilikom razmatranja važno je pokazati vezu između osnovnih algoritamskih konstrukcija i operatora: algoritamske konstrukcije su napisane u programskom jeziku pomoću odgovarajućih operatora. Izuzetak je, u određenom smislu, sekvencijalni dizajn; on određuje linearni redoslijed akcija. Akcije u strogo linearnom programu implementiraju se samo naredbama dodjele i naredbama poziva procedure.

U početnoj fazi učenja programiranja, školarci se susreću sa mnogim problemima. Prva psihološka barijera koju moraju prevladati je učenje operatora dodjeljivanja. Jedan od glavnih zadataka koji morate riješiti zajedno sa svojim učenicima je zamjena vrijednosti dvije varijable. Možete zamoliti školarce da mentalno riješe problem kako zamijeniti sadržaj dvije ladice, na primjer, stol. Obično u ovoj fazi diskusije učenici shvataju da je za rješavanje problema potrebna treća kutija (varijabla). Međutim, kada pišu ovaj algoritam, oni često zbune u kojem dijelu operatora dodjeljivanja (lijevo ili desno) bi se određena varijabla trebala pojaviti.

Greške u pisanju aritmetičkih i logičkih izraza nastaju zbog nepoznavanja prioriteta operacija koje se koriste u izrazu. Pri tome, operacije ne znače samo računske, već i operacije poređenja i logičke vezive, a u jeziku C i operaciju zadatka, što je vrlo neobično za školarce. Situacija je komplicirana činjenicom da u različitim programskim jezicima iste operacije imaju različite relativne prioritete. Također treba obratiti pažnju na korespondenciju između tipova varijable i izraza s lijeve i desne strane operatora dodjeljivanja (pogledajte “ Tipovi podataka”).

Prilikom savladavanja operatora selekcije, korisno je da studenti programiraju algoritam koji sadrži strukturu sa više grana, koristeći kombinaciju uvjetnih iskaza i korištenje operatora selekcije.

Primjer. Na cjelobrojnu varijablu N Unesite starost osobe u godinama. Upišite frazu “ Imam K godina“, zamjenjujući riječ godine on godine ili godine zavisno od broja K. Evo dva rješenja za ovaj problem:

ako(k mod 100) in

onda writeln("Imam ",k," godina")

slučaj k mod 10 of

0,5..9:writeln("Imam ",k," godina");

1:writeln("Ja sam ",k," godina star");

2..4:writeln("Imam ",k," godina");

var k, n: cijeli broj;

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

ako(k mod 100) in

onda writeln("Imam ",k," godina") ostalo

ako n=1 onda writeln("Ja sam ",k," godina star")

ako(n >=) i(n<= 4)

onda writeln("Imam ",k," godina")

ostalo writeln("Imam ",k," godina")

Kada se razmatraju operatori petlje, korisno je predložiti programiranje istog zadatka na tri različita načina koristeći tri operatora petlje, i obrnuto, na osnovu uslova problema, naučiti odrediti koji je operator petlje najpogodniji u određenom slučaju.

Operator poziva procedure je na prvi pogled jednostavan. Ovdje je važno objasniti pravila za prosljeđivanje parametara procedurama i funkcijama, razliku između varijabilnih parametara i parametara vrijednosti (u drugom slučaju možemo prenijeti ne samo ime varijable, već i konstantu ili čak izraz odgovarajućeg tip). Formalni i stvarni parametri moraju odgovarati tipom, ali ne i imenom, što je studentima daleko od očiglednog.

Proučavanje kondicionalnog, a posebno složenog iskaza dobra je prilika za razgovor sa studentima o stilu pisanja programa. Postoji nekoliko uobičajenih načina za pisanje strukturiranih programa u Pascalu, ali svi oni uključuju uvlačenje za prilagođavanje ugniježđenih struktura. Važno za snimanje programa i komentara.

Prvi operand - "expression1" - može biti bilo koji izraz čiji je rezultat vrijednost tipa bool. Ako je rezultat istinito , tada se izvršava operator specificiran drugim operandom, to jest "expression2".

Ako je prvi operand jednak false , tada se izvršava treći operand - “izraz3”. Drugi i treći operandi, odnosno "expression2" i "expression3", moraju vraćati vrijednosti istog tipa i ne smiju biti tipa void. Rezultat izvršavanja uvjetnog izraza je rezultat "izraza2" ili rezultat "izraza3", ovisno o rezultatu "izraza1".

Ograničenja upotrebe operatera

Operator zasnovan na vrijednosti "expression1" mora vratiti jednu od dvije vrijednosti - ili "expression2" ili "expression3". Postoje brojna ograničenja za ove izraze:

  1. Ne možete miješati korisnički definirani tip sa jednostavnim tipom ili nabrajanjem. Prihvatljivo je koristiti NULL za pokazivač.
  2. Ako su tipovi vrijednosti jednostavni, tada će tip operatora biti maksimalni tip (pogledajte Primjena tipa).
  3. Ako je jedna od vrijednosti tip nabrajanja, a druga numerički tip, tada se nabrajanje zamjenjuje int i primjenjuje se drugo pravilo.
  4. Ako su obje vrijednosti enum vrijednosti, onda njihovi tipovi moraju biti isti, a tip operatora će biti nabrajanje.

Ograničenja za prilagođene tipove (klase ili strukture):

  1. tipovi moraju biti isti ili jedan mora naslijediti drugi.
  2. ako tipovi nisu isti (nasljeđivanje), onda se dijete implicitno prebacuje na roditelja, odnosno tip operatora će biti tip roditelja.
  3. Ne možete miješati objekt i pokazivač – ili su oba izraza objekti ili pokazivači. Prihvatljivo je koristiti NULL za pokazivač.

Bilješka

Budite oprezni kada koristite uslovni operator kao argument preopterećenoj funkciji, budući da je tip rezultata uslovnog operatora određen u trenutku prevođenja programa. I ovaj tip je definiran kao veći tip tipova "expression2" i "expression3".

primjer:

void func(double d) ( Ispis ("dvostruki argument: " ,d); )
void func(string s) ( Ispis ("string argument: " ,s); )

bool Izraz1=true;
dvostruki izraz2=M_PI;
string Expression3= "3.1415926" ;

void OnStart()
{
func(Izraz2);
func(Izraz3);

func(Izraz1?Izraz2:Izraz3);
func(!Izraz1?Izraz2:Izraz3);// dobijamo upozorenje kompajlera o eksplicitnom prevođenju na tip stringa
}

// Rezultat:
// dvostruki argument: 3.141592653589793

// argument niza: 3.141592653589793
// argument niza: 3.1415926

U prethodnom pasusu smo se upoznali sa strukturom programa u Pascalu, naučili kako opisati podatke i pogledali operator dodjeljivanja. Ovo je dovoljno za pisanje programa za konverziju podataka. Ali rezultat ovih transformacija nam neće biti vidljiv.

Za izlaz podataka iz RAM-a na ekran monitora, koristite izlazni operator pisanja:

Ovdje se u zagradama nalazi izlazna lista - lista izraza čije su vrijednosti ispisane. To mogu biti numerički, simbolički i logički izrazi, uključujući varijable i konstante.

Proizvoljan skup znakova zatvoren u apostrofe smatra se konstantom niza. Konstanta stringa može sadržavati bilo koji karakter upisan na tastaturi.

Primjer. Naredba write ("s=" , s) se izvršava ovako:

  1. Na ekranu se prikazuju simboli u apostrofima: s=
  2. Na ekranu se prikazuje vrijednost varijable pohranjene u RAM ćeliji pod nazivom s.

Ako je vrijednost varijable s 15 i cjelobrojnog je tipa, na ekranu će se prikazati: s=15.

Ako je vrijednost varijable s 15, ali je realnog tipa, na ekranu će se pojaviti sljedeće: s=l.5E+01.

Kada se izvrši izlazni izraz, svi elementi izlazne liste se ispisuju odmah jedan za drugim. Dakle, kao rezultat operatora pisanja (1, 20, 300), na ekranu će biti prikazan niz brojeva 120300, koji ćemo percipirati kao broj 120300, a ne kao tri odvojene numeričke konstante. Izlazne podatke možete učiniti dostupnijim percepciji na različite načine:

Izlazni format je cijeli broj označen nakon dvotačke koji određuje koliko pozicija na ekranu treba da zauzima prikazana vrijednost. Ako u broju ima manje cifara od pozicija koje su za njega rezervirane na ekranu, tada se slobodne pozicije dopunjuju razmacima lijevo od broja. Ako je broj naveden u izlaznom formatu nakon dvotočka manji od potrebnog, automatski će se povećati na potreban minimum.

Za izlaz realnog broja u formatu fiksne točke, dva parametra su specificirana u izlaznoj listi za svaki izraz:

  1. ukupan broj pozicija dodijeljenih za broj;
  2. broj pozicija u razlomku broja.

Kada se izvrši nova naredba pisanja, izlaz se nastavlja u istom redu. Da biste prešli na novi red, koristite operator writeln. Nema drugih razlika između naredbi write i writeln.

4.2.2. Prvi program na jeziku Pascal

Koristeći gore navedene operatore, kreirat ćemo program koji izračunava obim i površinu kruga polumjera 5,4 cm.

Početni podaci u ovom zadatku su polumjer: r - 5,4 cm. Rezultat programa treba da budu vrijednosti C - obim i S - površina kruga. C, S i r su veličine realnog tipa.

Početni podaci i rezultati povezani su relacijama poznatim iz predmeta matematika: C = 2πr, S = πr +. Program koji implementira proračune koristeći ove formule će izgledati ovako:

Ovaj program je ispravan i rješava problem. Kada ga pokrenete, dobit ćete sljedeći rezultat:

Ipak, program koji smo sastavili ima značajan nedostatak: pronalazi obim i površinu kruga za jednu vrijednost radijusa (5,4 cm).

Da biste izračunali obim i površinu kruga za drugu vrijednost radijusa, morat ćete izvršiti izmjene direktno u tekstu programa, odnosno promijeniti operator dodjeljivanja. Izmjena postojećeg programa, u najmanju ruku, nije uvijek zgodna (na primjer, kada je program velik i ima mnogo operatora dodjeljivanja). U nastavku ćete se upoznati sa operatorom koji vam omogućava da unesete početne podatke dok program radi, bez promjene teksta programa.

4.2.3. Unos sa tastature

Da unesete varijabilne vrijednosti u RAM, koristite operator unosa čitanja:

Kada se izvrši naredba read, računar ulazi u režim čekanja podataka: korisnik mora uneti podatke sa tastature i pritisnuti taster Enter. Više vrijednosti za varijable numeričkog tipa može se unijeti odvojeno razmacima ili zarezima. Prilikom unosa karakternih varijabli, razmaci i zarezi se tretiraju kao znakovi, tako da se ne mogu unijeti.

Prva vrijednost varijable koju unese korisnik stavlja se na memorijsku lokaciju čije se ime nalazi prvo na ulaznoj listi itd. Dakle, tipovi ulaznih vrijednosti (ulazni tok) moraju odgovarati tipovima varijabli navedenih u varijabli opis odjeljka.

Primjer. Neka

var i, j: cijeli broj; x: realno; a:char;

Dodijelimo varijable i, j, x i vrijednosti 1, 0, 2.5 i "A". Da bismo to učinili, koristit ćemo operator read (i, j, x, a) i organizirati ulazni tok na jedan od sljedećih načina:

Ovdje ne samo da smo koristili različite graničnike (razmak, zarez), već smo i predstavili ulazni tok kao jedan, dva i četiri reda.

Takođe možete koristiti readln operator za unos podataka sa tastature, koji se od operatora read razlikuje samo po tome što se nakon izvršenja kursor pomera u novi red.

Poboljšajmo program n_1 tako što ćemo organizirati unos podataka u njega koristeći operator read. A kako bi korisnik znao čemu je program namijenjen i shvatio tačno kakvu radnju računar očekuje od njega, prikazat ćemo odgovarajuće tekstualne poruke pomoću operatora writeln:

Rezultat poboljšanog programa:

Sada naš program može izračunati obim i površinu kruga za bilo koju vrijednost r. Drugim riječima, ne rješava jedan problem, već čitavu klasu problema. Osim toga, program jasno i prikladno organizira unos početnih podataka i izlaz dobivenih rezultata. Ovo osigurava prijateljski korisnički interfejs.

Najvažniji

Za unos varijabilnih vrijednosti u RAM koriste se operatori za unos read i readln.

Za izlaz podataka iz RAM-a na ekran monitora koriste se izlazni operatori write i writeln.

Unos početnih podataka i izlaz rezultata treba da budu organizovani jasno i pogodno; ovo osigurava prijateljski korisnički interfejs.

Pitanja i zadaci

  1. Napišite izraz koji vam omogućava da unesete vrijednost varijable suma dok je program pokrenut.
  2. Cjelobrojnim varijablama i, y, k treba dodijeliti vrijednosti 10, 20 i 30, redom. Zapišite ulaznu izjavu koja odgovara ulaznom toku:
      a) 20 10 30
      b) 30 20 10
      c) 10 30 20
  3. Opišite varijable potrebne za izračunavanje površine trokuta na osnovu njegove tri strane i napišite izjavu koja daje potrebne ulazne podatke.
  4. Šta je rezultat izvršenja naredbe?
      a) napisati (a)
      b) napisati (1 a ")
      c) napisati (1 a=1, a)
  5. Kojeg tipa je varijabla f ako je nakon izvršenja naredbe write (f) na ekranu prikazan sljedeći broj?
      a) 125
      b) 1,25E+2
  6. Kako mogu prikazati realan broj u formatu fiksne tačke?
  7. Zapišite operatore za unos dva broja i njihov izlaz obrnutim redoslijedom.
  8. Evo fragmenta programa:

    pročitaj(a); pročitaj(b); c:=a+b; napisati(a, b); pisati (c)

    Pojednostavite ga smanjenjem broja ulaznih i izlaznih izraza.

  9. Evo fragmenta programa:

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

    Koji će brojevi biti prikazani na ekranu računara?

  10. Napišite program koji izračunava površinu i obim pravougaonika na osnovu njegove dvije strane.

“Štampač za štampanje plastičnih kartica” - Mogućnost postavljanja dvostruko više informacija na jednu plastičnu karticu. Cijena. Štampač za štampanje plastičnih kartica. ZEBRA P110i/ P120i. Pregled asortimana modela. Ekonomični štampači u punoj boji za štampanje plastičnih kartica. Visoke performanse Širok raspon opcionih uređaja za kodiranje.

“PC periferni uređaji” - Periferni uređaji. Štampači. Zapis. Digitalni fotoaparati. Hijerarhija alata za povezivanje. Video adapteri. Klasifikacija PU. Univerzalni serijski bus. CD-R. Opcije odabira. Ugrađen blic. Pioniri. Priroda. Modem. Video terminal. Skeneri. PC periferije. Klasifikacija mišjeg oblika.

“Sredstvo za unos i izlaz informacija” - Skener. Ploter. CRT. Štampači. Tastatura. Digitalni fotoaparati i fotoaparati. Funkcije. Univerzalni ulazni uređaj. Uređaji za unos i izlaz informacija. Grafički tablet. Miš.

“Uređaji za izlaz informacija” - Računarski uređaj. Što je veća rezolucija monitora, to je veći kvalitet slike. Nedostaci inkjet štampača: Velika potrošnja mastila; Visoka cijena punjenja. Monitori sa ravnim ekranom sa tečnim kristalima (LCD) su kompaktni i bez emisija. Uređaji za izlaz informacija. Monitor je univerzalni uređaj za izlaz informacija.

"Štampači" - Lokalni. Termoblok, šporet, fuser - jedinica u kojoj se toner peče u papir. Laser. Matrix (u obliku igle). Vremenom gube svojstva i moraju ih redovno zamijeniti specijalisti. Jet. Mreža. Promijenio korisnik. Karakteristike štampača. Razvijač, nosač, razvijač - najmanje metalne čestice koje prenose toner na foto rolu.

"I/O podsistem" - Prelomna tačka. Stolovi. Kontinuirano postavljanje. Atribut. Dozvole za fajl. Povezana lista indeksa. Podaci. Fizička organizacija. Direktan pristup memoriji. Indeksirano sekvencijalni fajl. Montaža. I/O vođen prekidom. Dozvole za pristup direktoriju. Organizacija paralelnog rada.

U ovoj temi ima ukupno 27 prezentacija

Programski kod je prikazan na sl. 4.3-9.

Opcija Strict On Opcija Eksplicitno za uvoz System.Math Public Class Form1 "Funkcija za unos koordinata tačke u TextBox Funkcija vvod(ByVal T As TextBox) Kao Single Return CSng(Val(T.Text)) End Funkcija "Procedura za izlaz rezultata u TextBox Sub vivod (ByVal Z As Single, ByVal T Kao TextBox) T.Text = CStr(Z) End Sub "Funkcija za izračunavanje dužine segmenta iz koordinata dvije tačke Javna funkcija Dužina segmenta (ByVal x1 kao pojedinačni, _ ByVal y1 kao pojedinačni, ByVal x2 kao pojedinačni, _ ByVal y2 kao pojedinačni) kao pojedinačni povratak CSng(Sqrt((x2 - x1) ^ 2 + (y2 - y1) ^ 2)) Krajnja funkcija "Procedura za izračunavanje opsega i površine trokuta Sub PS (ByVal x1 kao pojedinačni, ByVal y1 kao pojedinačni, _ ByVal x2 kao pojedinačni, ByVal y2 kao pojedinačni, _ ByVal x3 kao pojedinačni, ByVal y3 kao pojedinačni, _ ByRef P kao pojedinačni , ByRef S As Single) Dim A, B, C, Pp As Single A = Dužina segmenta(x1 , y1, x2, y2)"Pozivanje funkcije za izračunavanje dužine negativa. B = Dužina segmenta (x2, y2, x3, y3) C = Dužina segmenta (x3, y3, x1, y1) P = (A + B + C) : Pp = P / 2 S = CSng(Sqrt(Pp * (Pp - A) * (Pp - B) * (Pp - C))) End Sub "Procedura za obradu događaja klika na dugme Button1 Private Sub Button1_Click(ByVal pošiljalac Kao System.Object, _ ByVal e Kao System.EventArgs) Rukovati Button1.Click Dim x1 kao pojedinačni, x2 kao pojedinačni, x3 kao pojedinačni dim y1 kao pojedinačni, y2 kao pojedinačni, y3 kao pojedinačni dim kao pojedinačni, Plo kao pojedinačni x1 = vvod(TextBox1) : x2 = vvod(TextBox2) : x3 = vvod(TextBox3 ) y1 = vvod(TextBox6) : y2 = vvod(TextBox7) : y3 = vvod(TextBox8) PS(x1, y1, x2, y2, x3, y3, Per, Plo) vivod(Plo, TextBox4) : vivod(Plo, TextBox5) End Sub Private Sub Button2_Klik(ByVal pošiljalac Kao System.Object, _ ByVal e Kao System.EventArgs) Rukovao Button2.Kliknite End End Sub End Class

Pokretanje aplikacije i postizanje rezultata

Rezultat je prikazan na sl. 4.3-10.

Dokaz ispravnosti rezultata

A=
= 2,82843 B =
= 2

C = = 2 P = A + B + C = 6,828427; Rr = R/2 = 3,414213 S= = 2


Sigurnosna pitanja na temu

„Struktura VB programa, modula i procedura.

Alati za programiranje algoritama linearne strukture"

1. Šta je matematički model?

2. Koje su glavne faze u rješavanju problema na računaru?

3. Koje se faze rješavanja računarskih problema odvijaju bez učešća računara?

4. Šta se zove matematički model objekta ili pojave?

5. Koji su uzastopni koraci u procesu razvoja programa?

6. Šta je algoritam?

7. Koja osnovna svojstva algoritam treba da ima?

8. Koji načini postoje za opisivanje algoritama?

9. Koji se grafički simboli obično prikazuju na dijagramima algoritama?

10. Kako radi tumač?

11. Kako radi kompajler?

12. Koji se algoritam naziva linearnim?

13. Koji se algoritam naziva ciklički?

14. Koji se algoritam naziva grananjem?

15. Koja je razlika između prosljeđivanja rezultata funkcija i procedura?

16. Dokazuje li dobivanje prihvatljivog rezultata da je program ispravan?

17. Koje greške mogu ostati neotkrivene ako ne provjerite (pregledate, skrolujete) program?

18. Po čemu se testiranje programa razlikuje od otklanjanja grešaka?

19. Da li je moguće dokazati ispravnost programa testiranjem?

20. U kojoj fazi programa se izračunavaju referentni rezultati testa?

21. Navedite glavne faze procesa testiranja.

22. Koja je razlika između sintaktičkih grešaka i semantičkih grešaka?

23. Šta ukazuje na nedostatak poruka o sintaksičkim greškama na mašini?

24. Koje vrste grešaka prevodilac ne može otkriti?

25. Šta je program?

26. U kojoj fazi se odvija traženje i otklanjanje grešaka u programu?

27. Šta je sistem programiranja?

28. Koja je procedura?

29. Koje su prednosti programa koji ima procedure?

30. Koji alati za proceduralno programiranje su dostupni u VB-u?

31. Kako se podaci razmjenjuju između pojedinačnih programskih procedura?

32. Šta su stvarni i formalni parametri?

33. Kako proslijediti kao parametar: konstantu, varijablu, izraz?

34. Kako se koriste globalne varijable?

35. Kako se koriste lokalne varijable?

36. Šta su formalni parametri?

37. Koji su stvarni parametri?

38. Šta se dešava kada se pozove procedura?

39. Kako se parametri mogu proslijediti proceduri?

40. Koji parametri se prosljeđuju po vrijednosti?

41. Koji se parametri prosljeđuju na adresu?

42. Šta su alati za proceduralno programiranje?

43. Šta je rezultat izvršavanja funkcije?

44. Kako pojedinačne varijable treba deklarirati tako da budu lokalne unutar funkcije?

45. Koja se izjava koristi za rani izlazak iz funkcije?

46. Što se kontrolira prilikom pozivanja funkcija i procedura?

47. Kako treba deklarirati formalne parametre da bi se promjenjivi parametar proslijedio po vrijednosti?

48. Kako treba deklarirati formalne parametre da bi se promjenjivi parametar proslijedio na adresu?

49. Kako se poziva procedura funkcije iz pozivajućeg programa?

50. Šta bi mogao biti rezultat postupka?

51. Koja se izjava koristi za rano izlazak iz procedure?

52. Gdje se mogu naći opisi funkcija i procedura?

53. Gdje će varijabla deklarirana korištenjem javnog operatora biti dostupna?

54. Gdje se može locirati privatni operater?

55. Šta je komentar i pravila za njegovo pisanje?

56. Koje su vrijednosti varijabli na početku programa?

57. Zašto su procedure i funkcije opisane (definirane)?

58. Kako se zovu procedure?

59. Kako se nazivaju funkcije?


Povezane informacije.


Najbolji članci na ovu temu