Bilete pentru examenul de stat unificat în informatică. Culegere de eseuri de studii sociale ideale

Opțiunea nr. 3490088

La finalizarea sarcinilor 1-23, răspunsul este un număr, care corespunde cu numărul răspunsului corect, sau un număr, o secvență de litere sau numere. Răspunsul trebuie scris fără spații sau caractere suplimentare.


Dacă opțiunea este oferită de profesor, puteți introduce răspunsurile la teme din partea C sau le puteți încărca în sistem într-unul dintre formatele grafice. Profesorul va vedea rezultatele finalizării temelor în partea B și va putea evalua răspunsurile încărcate în partea C. Scorurile atribuite de profesor vor apărea în statisticile dumneavoastră.

Versiune pentru imprimare și copiere în MS Word

Specificați cel mai mic număr hexazecimal de patru cifre a cărui notație binară conține exact 5 zerouri. În răspunsul dvs., notați numai numărul hexazecimal în sine; nu este necesar să indicați baza sistemului numeric.

Răspuns:

Este dat un fragment din tabelul de adevăr al expresiei F:

x1x2x3x4x5x6x7x8F
1 0 1 0 1 1 1 0 0
0 1 0 1 1 0 0 1 0
1 0 0 1 0 1 0 1 1

Care dintre următoarele expresii ar putea fi F?

1) (x2→x1) ∧ ¬x3 ∧ x4 ∧ ¬x5 ∧ x6 ∧ ¬x7 ∧ x8

2) (x2→x1) ∨ ¬x3 ∨ x4 ∨ ¬x5 ∨ x6 ∨ ¬x7 ∨ x8

3) ¬(x2→x1) ∨ x3 ∨ ¬x4 ∨ x5 ∨ ¬x6 ∨ x7 ∨ ¬x8

4) (x2→x1) ∧ x3 ∧ ¬x4 ∧ x5 ∧ ¬x6 ∧ x7 ∧ ¬x8

Răspuns:

Au fost construite drumuri între așezările A, B, C, D, E, F, a căror lungime este prezentată în tabel. Absența unui număr în tabel înseamnă că nu există un drum direct între puncte.

ABCDEF
A 2 4 8 16
B2 3
C4 3
D8 3 3 5 3
E 5 5
F16 3 5

Determinați lungimea celei mai scurte căi dintre punctele A și F, trecând prin punctul E și nu trecând prin punctul B. Puteți călători doar pe drumurile indicate.

Răspuns:

Pentru operațiunile de grup cu fișiere, sunt folosite măști de nume de fișier. Masca este o secvență de litere, numere și alte caractere permise în numele fișierelor, care poate conține, de asemenea, următoarele caractere:

simbolul "?" () semnul întrebării înseamnă exact un caracter arbitrar.

simbolul „*” (asterisc) înseamnă orice secvență de caractere de lungime arbitrară, inclusiv „*” poate specifica și o secvență goală.

Există 6 fișiere în director:

Determinați ce mască va fi folosită pentru a selecta grupul specificat de fișiere din director:

Răspuns:

Un cod de 5 biți este utilizat pentru a transmite date printr-un canal de comunicație. Mesajul conține doar literele A, B și C, care sunt codificate cu următoarele cuvinte de cod:

A – 11111, B – 00011, C – 00100.

Pot exista interferențe în timpul transmisiei. Cu toate acestea, puteți încerca să corectați unele erori. Oricare două dintre aceste trei cuvinte de cod diferă unul de celălalt în cel puțin trei poziții. Prin urmare, dacă a apărut o eroare în cel mult o poziție la transmiterea unui cuvânt, atunci se poate face o ghicire educată despre ce literă a fost transmisă. (Se spune că „codul corectează o eroare.”) De exemplu, dacă este primit cuvântul de cod 10111, se presupune că a fost transmisă litera A. (Diferența față de cuvântul de cod pentru A este doar într-o singură poziție; pentru alte cuvinte de cod sunt mai multe diferențe.) Dacă cuvântul de cod primit Dacă cuvântul diferă de cuvintele de cod pentru literele A, B, C în mai multe poziții, se consideră că a apărut o eroare (este indicată prin „ X").

Răspuns:

Aparatul primește un număr din patru cifre ca intrare (numărul nu poate începe de la zero). Pe baza acestui număr, se construiește un număr nou conform următoarelor reguli.

1. Prima și a doua, a doua și a treia, a treia și a patra cifră ale numărului dat sunt adăugate separat.

2. Cea mai mică dintre cele trei sume primite este eliminată.

3. Cele doua sume ramase se scriu una dupa alta in ordine nedescrescatoare fara separatori.

Exemplu. Număr original: 1984. Sume: 1 + 9 = 10, 9 + 8 = 17, 8 + 4 = 12.

Sunt șterse 10. Rezultat: 1217.

Specifica cel mai puţin un număr, atunci când este procesat, mașina produce rezultatul 613.

Răspuns:

Este dat un fragment dintr-o foaie de calcul.

ABCDEF
1
2 1 10 100 1000
3 2 20 200 2000
4 3 30 300 3000
5 4 40 400 4000
6 5 50 500 5000

În celula B2, scrieți formula =D$4 + $F3. După aceasta, celula B2 a fost copiată în celula A3. Ce număr va fi afișat în celula A3?

Notă: Semnul $ este folosit pentru a indica adresarea absolută.

Răspuns:

Notați numărul care va fi tipărit ca urmare a următorului program. Pentru confortul dumneavoastră, programul este prezentat în cinci limbaje de programare.

Răspuns:

Înregistrarea sunetului pe patru canale (quad) este efectuată cu o frecvență de eșantionare de 32 kHz și o rezoluție de 32 de biți. Înregistrarea durează 3 minute, rezultatele sale sunt scrise într-un fișier, compresia datelor nu este efectuată. Determinați dimensiunea aproximativă a fișierului rezultat (în MB). Ca răspuns, introduceți cel mai apropiat multiplu întreg de cinci la dimensiunea fișierului.

Răspuns:

Un cifr de blocare cu combinație este o secvență de cinci caractere, fiecare dintre acestea fiind un număr de la 1 la 5. Câte diverse opțiuni poate fi specificat un cifr dacă se știe că cifra 1 apare exact de trei ori și fiecare dintre celelalte cifre valide poate apărea în cifr de orice număr de ori sau nu apare deloc?

Răspuns:

Algoritmul recursiv este scris mai jos în cinci limbaje de programare F.

Ca răspuns, indicați succesiunea de numere care va fi imprimată pe ecran ca urmare a apelării F(5).

Răspuns:

În terminologia rețelelor TCP/IP, o mască de subrețea este un număr binar de 32 de biți care determină ce biți ai adresei IP a computerului sunt comuni pentru întreaga subrețea - acești biți ai măștii conțin 1. De obicei, măștile sunt scrise ca un cvadruplu de numere zecimale - după aceleași reguli, la fel ca și adresele IP. Pentru unele subrețele, masca este 255.255.248.0. Câte adrese diferite de computer permite această mască?

Notă.În practică, două adrese nu sunt folosite pentru a adresa computere: adresa de rețea și adresa de difuzare.

Răspuns:

Un număr de mașină este format din mai multe litere (numărul de litere este același în toate numerele), urmate de 4 cifre. În acest caz, sunt folosite 10 numere și doar 5 litere: P, O, M, A, N. Trebuie să aveți cel puțin 1.000.000 de numere diferite. Care este cel mai mic număr de litere care ar trebui să fie într-un număr de înmatriculare?

Răspuns:

Artistul MAȘINA „trăiește” într-un labirint dreptunghiular limitat pe un plan în carouri, prezentat în figură. Celulele gri sunt pereți ridicați, celulele luminoase sunt celule libere de-a lungul cărora CAR se poate mișca liber. De-a lungul marginii câmpului de labirint există și un zid ridicat cu numere și litere imprimate pe el pentru a identifica celulele din labirint.

Sistemul de comenzi al interpretului MASHINKA:

Când oricare dintre aceste comenzi este executată, CAR mută o celulă în mod corespunzător (în raport cu observatorul): sus, jos ↓, stânga ←, dreapta →.

Patru echipe verifică adevărul condiției că nu există perete de fiecare parte a celulei în care se află CAR (și în raport cu observatorul):

PA<условие>echipă

se execută atâta timp cât condiția este adevărată, în caz contrar se trece la linia următoare.

Când încercați să vă mutați la orice celulă gri, CAR-ul se sparge de perete.

Câte celule ale labirintului dat îndeplinesc cerința ca, după pornirea în el și executarea programului sugerat mai jos, CAR să nu se rupă?

PA<снизу свободно>jos

PA<слева свободно>stânga

Răspuns:

Figura prezintă o diagramă a drumurilor care leagă orașele A, B, C, D, D, E, K, L, M, N, P, R, T. Pe fiecare drum vă puteți deplasa doar într-o singură direcție, indicată de săgeată .

Câte rute diferite există de la orașul A la orașul T?

Răspuns:

Într-un sistem numeric cu o bază N numărul 87 10 se termină cu 2 și nu conține mai mult de două cifre. Listați toate valorile potrivite, separate prin virgule, în ordine crescătoare N.

Răspuns:

În limbajul de interogare al motorului de căutare, simbolul „|” este folosit pentru a desemna operația logică „SAU”, iar simbolul „&” este folosit pentru operația logică „ȘI”.

Tabelul arată interogările și numărul de pagini găsite pentru un anumit segment de internet.

CererePagini găsite (în mii)
Franța și Germania 274
Germania și (Franța | Austria) 467
Franța și Germania și Austria 104

Câte pagini (în mii) vor fi găsite pentru interogare? Germania și Austria?

Se crede că toate interogările au fost executate aproape simultan, astfel încât setul de pagini care conțineau toate cuvintele căutate nu s-a modificat în timpul executării interogărilor.

Răspuns:

Să notăm cu m&n conjuncția pe biți a numerelor întregi nenegative mȘi n.

Deci, de exemplu, 14&5 = 1110 2 &0101 2 = 0100 2 = 4.

Pentru care este cel mai mic număr întreg nenegativ A formula

X&51 = 0 ∨ (X&41 = 0 → X&A = 0)

este identic adevărat (adică ia valoarea 1 pentru orice valoare întreagă nenegativă a variabilei X)?

Răspuns:

Mai jos este o înregistrare a limbi diferite fragment de programare al aceluiași program. Programul descrie un tablou întreg unidimensional A; în fragmentul prezentat, sunt procesate elemente de matrice cu indici de la 1 la 10.

Înainte de începerea programului, aceste elemente de matrice aveau valorile 0, 1, 2, 3, 4, 5, 4, 3, 2, 1 (adică A = 0; A = 1; ...; A = 1).

Care dintre aceste elemente de matrice va avea cea mai mare valoare după executarea fragmentului de program? În răspunsul dvs., indicați indicele elementului - un număr de la 1 la 10.

Răspuns:

Algoritmul este scris mai jos în cinci limbi. Având un număr x ca intrare, acest algoritm imprimă două numere: a și b. Specificați cel mai mic dintre astfel de numere x, când este introdus, algoritmul afișează mai întâi 3 și apoi 12.

Răspuns:

Scrieți în răspuns cea mai mare valoare variabila de intrare k, la care programul produce același răspuns ca și cu valoarea de intrare k= 20. Pentru confortul dumneavoastră, programul este furnizat în cinci limbaje de programare.

Răspuns:

Calculatorul are două comenzi:

1. adăugați 4,

2. scade 2.

Primul dintre ele mărește numărul de pe ecran cu 4, al doilea îl micșorează cu 2. Dacă în timpul calculelor apare un număr negativ, eșuează și șterge ceea ce este scris pe ecran. Un program Calculator este o secvență de comenzi. Câte numere diferite pot fi obținute de la numărul 8 folosind un program care conține exact 16 instrucțiuni?

Răspuns:

Câte seturi diferite de valori ale variabilelor logice x1, x2, x3, x4, x5, x6, x7, x8, x9, x10 există care îndeplinesc toate condițiile enumerate mai jos:

((x1 → x2) → (x3 → x4)) ∧ ((x3 → x4) → (x5 → x6)) = 1;

((x5 → x6) → (x7 → x8)) ∧ ((x7 → x8) → (x9 → x10)) = 1;

x1∧x3∧x5∧x7∧x9 = 1.

Răspunsul nu trebuie să enumere toate seturile diferite de valori ale variabilelor x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, la care acest sistem egală Ca răspuns, trebuie să indicați numărul de astfel de seturi.

Răspuns:

A fost necesar să se scrie un program care să introducă coordonatele unui punct dintr-un plan de la tastatură ( X y- numere reale) și determină dacă un punct aparține zonei umbrite. Programatorul s-a grăbit și a scris incorect programul.

Faceți următoarele în secvență:

1. Redesenați și completați un tabel care arată cum funcționează programul cu argumente aparținând diferitelor zone (A, B, C, D, E, F, G și H).

Punctele situate la granițele regiunilor nu trebuie luate în considerare separat. În coloanele de condiții, indicați „da” dacă condiția este îndeplinită, „nu” dacă condiția nu este îndeplinită, „-” (liniuță) dacă condiția nu va fi verificată, „nu se știe” dacă programul se comportă diferit pentru sensuri diferite aparținând acestei zone. În coloana „Programul va ieși”, specificați ce va afișa programul pe ecran. Dacă programul nu scoate nimic, scrieți „-” (liniuță). Dacă sunt afișate texte diferite pentru valori diferite aparținând zonei, scrieți „necunoscut”. Vă rugăm să indicați „da” sau „nu” în ultima coloană.

2. Indicați modul în care programul trebuie modificat astfel încât să nu existe cazuri de funcționare incorectă a acestuia. (Acest lucru se poate face în mai multe moduri; este suficient să indicați orice metodă de modificare a programului original.)

Doi jucători, Petya și Vanya, joacă următorul joc. Există un morman de pietre în fața jucătorilor. Jucătorii se pe rând, Petya face prima mișcare. Într-o singură tură, jucătorul poate adăuga una sau trei pietre la grămadă sau poate dubla numărul de pietre din grămadă. De exemplu, având o grămadă de 15 pietre, într-o singură mișcare poți obține o grămadă de 16, 18 sau 30 de pietre. Fiecare jucător trebuie să facă mișcări suma nelimitata pietre. Jocul se termină când numărul de pietre din grămadă devine cel puțin 35. Câștigătorul este jucătorul care a făcut ultima mutare, adică. primul care a primit o grămadă care conține 35 sau mai multe pietre. La momentul inițial erau pietre S în grămadă; 1 ≤ S ≤ 34. Vom spune că un jucător are o strategie câștigătoare dacă poate câștiga cu orice mișcare a adversarului. A descrie strategia unui jucător înseamnă a descrie ce mișcare ar trebui să facă în orice situație pe care o poate întâlni. joc diferit dusman.

Finalizați următoarele sarcini. În toate cazurile, justificați răspunsul.

Exercitiul 1

a) Indicați toate valorile numărului S pentru care Petya poate câștiga într-o singură mișcare. Justificați că toate au fost găsite valorile cerute S și ​​indicați mișcările câștigătoare.

b) Indicați o valoare a lui S astfel încât Petya să nu poată câștiga într-o singură mișcare, dar pentru orice mișcare pe care o face Petya, Vanya poate câștiga cu prima sa mutare. Descrie strategia de câștig a Vanyei.

Sarcina 2

Indicați două astfel de valori ale lui S pentru care Petya are o strategie câștigătoare și sunt îndeplinite simultan două condiții:

− Petya nu poate câștiga într-o singură mișcare;

− poate câștiga cu a doua sa mutare, indiferent de modul în care se mișcă Vanya.

Pentru fiecare valoare dată a lui S, descrieți strategia câștigătoare a lui Petit.

Sarcina 3

Specificați valoarea lui S la care două condiții sunt îndeplinite simultan:

− Vanya are o strategie de câștig care îi permite să câștige cu prima sau a doua mișcare în oricare dintre jocurile lui Petya;

Metodologul raional a decis că 20% dintre participanți ar trebui să primească un rating „excelent” (un număr întreg, cu partea fracțională eliminată).

Pentru a face acest lucru, ea trebuie să stabilească ce punct trebuie să obțină elevul pentru a obține un „excelent”.

Dacă este imposibil să se determine un scor astfel încât exact 20% dintre participanți să primească un scor „excelent”, mai puțini participanți de 20% ar trebui să primească un scor „excelent”.

Dacă nu există astfel de participanți (mai mult de 20% dintre participanți au obținut cel mai mare punctaj), aceștia și numai acești studenți ar trebui să primească un „excelent”.

Scrieți un program eficient, inclusiv memoria utilizată (indicați versiunea limbajului de programare folosit, de exemplu Borland Pascal 7.0), care să afișeze pe ecran cel mai mic punctaj obținut de participanții care au primit „excelent”. Se știe că mai mult de 5 studenți au luat informatică. De asemenea, se știe că există o serie de puncte pe care nici un participant nu le-a primit.

Numărul de studenți care au promovat examenul este mai întâi furnizat programului ca intrare. Fiecare dintre următoarele N rânduri conține informații despre elevi în formatul:

unde este un șir format din cel mult 30 de caractere fără spații,

Un șir de maximum 20 de caractere fără spații,

Un număr întreg în intervalul de la 1 la 99,

Un număr întreg în intervalul de la 1 la 100. Aceste date sunt scrise separate printr-un spațiu, cu exact câte unul între fiecare pereche (adică un total de trei spații pe fiecare linie).

Exemplu de șir de intrare:

Ivanov Ivan 50 87

Exemplu de ieșire:

Soluțiile la sarcinile din partea C nu sunt verificate automat.
Pagina următoare vă va cere să le verificați singur.

Finalizați testarea, verificați răspunsurile, vedeți soluțiile.



RegiuneCondiția 1

(y >= −x*x)

Condiția 2

(y >= −x−2)

Condiția 3Programul se va imprima

Examenul de stat unificat în informatică constă din 27 de sarcini. Fiecare sarcină este dedicată unuia dintre subiectele studiate în cadrul curiculumul scolar. Informatica este o materie de specialitate, asa ca doar acei studenti care vor avea nevoie de ea in viitor o fac. Aici poți afla cum să rezolvi Teme de examen de stat unificatîn informatică și, de asemenea, studiază exemple și soluții bazate pe sarcini detaliate.

Toate sarcinile USE toate sarcinile (107) USE sarcina 1 (19) USE sarcina 3 (2) USE sarcina 4 (11) USE sarcina 5 (10) USE sarcina 6 (7) USE sarcina 7 (3) USE sarcina 9 (5) Sarcina de examinare de stat unificată 10 (7) Sarcina de examinare de stat unificată 11 (1) Sarcina de examinare de stat unificată 12 (3) Sarcina de examinare de stat unificată 13 (7) Sarcina de examinare de stat unificată 16 (19) Sarcina de examinare de stat unificată 17 (4) de stat unificat Examen fără număr (9)

Interpretul Kvadrator are două comenzi: adaugă 3 și pătrat

Interpretul Kvadrator are două echipe, cărora li se atribuie numere: 1 - adună 3; 2 - pătratează. Primul dintre ei mărește numărul de pe ecran cu 3, al doilea îl ridică la a doua putere. Interpretul lucrează numai cu numere naturale. Creați un algoritm pentru obținerea numărului B din numărul A, care nu conține mai mult de K comenzi. În răspunsul tău, notează doar numerele de comandă. Dacă există mai mult de un astfel de algoritm, atunci notați oricare dintre ei.

Vasya alcătuiește cuvinte care conțin doar litere

Vasya compune cuvinte cu N litere în care apar doar literele A, B, C, iar litera A apare exact 1 dată. Fiecare dintre celelalte litere valide poate apărea într-un cuvânt de orice număr de ori sau deloc. Un cuvânt este orice succesiune validă de litere, care nu are neapărat sens. Câte cuvinte sunt pe care Vasya le poate scrie?

Igor alcătuiește un tabel de cuvinte cod pentru trimiterea mesajelor

Igor alcătuiește un tabel de cuvinte de cod pentru transmiterea mesajelor; fiecare mesaj are propriul cuvânt de cod. Ca cuvinte de cod, Igor folosește cuvinte cu N litere, care conțin doar literele A, B, C, iar litera A apare exact o dată. Fiecare dintre celelalte litere valide poate apărea în cuvântul de cod de câte ori sau deloc. Câte cuvinte de cod diferite poate folosi Igor?

Sarcina este inclusă în Examenul de stat unificat în informatică pentru clasa a 11-a sub numărul 10.

Algoritm pentru calcularea valorii funcției F(n)

Algoritm pentru calcularea valorii funcției F(n), unde n este numar natural, este dat de următoarele relații. Care este valoarea funcției F(K)? Notează doar un număr natural în răspunsul tău.

Sarcina este inclusă în Examenul de stat unificat în informatică pentru clasa a 11-a sub numărul 11.

Câte secunde va dura modemul pentru a transmite mesaje?

Câte secunde vor dura ca un modem care transmite mesaje cu o viteză de N biți/s pentru a transmite o imagine color bitmap de dimensiunea AxB pixeli, cu condiția ca culoarea fiecărui pixel să fie codificată în K biți? (Introduceți doar numărul în formular.)

Sarcina este inclusă în Examenul de stat unificat în informatică pentru clasa a 11-a sub numărul 9.

Descifratorul trebuie să recupereze fragmentul de mesaj deteriorat

Decriptorul trebuie să restaureze fragmentul de mesaj deteriorat, format din 4 caractere. Există informații sigure că nu s-au folosit mai mult de cinci litere (A, B, C, D, E), cu unul dintre simboluri pe locul trei... Una dintre litere pe locul patru... Una dintre literele din primul loc ... Pe al doilea - ... A apărut Informații suplimentare că una dintre cele patru opțiuni este posibilă. Care?

Sarcina este inclusă în Examenul de stat unificat în informatică pentru clasa a 11-a sub numărul 6.

Stația meteorologică monitorizează umiditatea aerului

Stația meteorologică monitorizează umiditatea aerului. Rezultatul unei măsurători este un număr întreg de la 0 la 100 la sută, care este scris folosind cel mai mic număr posibil de biți. Stația a făcut N măsurători. Determinați volumul de informații al rezultatelor observației.

Ce formă va lua formula după ce celula este copiată?

Celula conține o formulă. Ce formă va lua formula după ce celula X este copiată în celula Y? Notă: Semnul $ este folosit pentru a indica adresarea absolută.

Sarcina este inclusă în Examenul de stat unificat în informatică pentru clasa a 11-a sub numărul 7.

În directorul rădăcină al unei unități nou formatate

În timp ce se află în directorul rădăcină al discului nou formatat, studentul a creat K directoare. Apoi, în fiecare dintre directoarele create, a mai creat N directoare. Câte directoare există pe disc, inclusiv directorul rădăcină?

Sarcina este inclusă în Examenul de stat unificat în informatică pentru clasa a 11-a.

Patru bucăți de hârtie au fost găsite la locul crimei

Patru bucăți de hârtie au fost găsite la locul crimei. Ancheta a stabilit că acestea conțineau fragmente ale aceleiași adrese IP. Oamenii de știință criminalistică au etichetat aceste fragmente cu literele A, B, C și D. Recuperați adresa IP. În răspunsul dvs., furnizați secvența de litere care reprezintă fragmentele în ordinea corespunzătoare adresei IP.

Petya a notat adresa IP a serverului școlii pe o bucată de hârtie

Petya a notat adresa IP a serverului școlii pe o bucată de hârtie și a pus-o în buzunarul jachetei. Mama lui Petya și-a spălat accidental jacheta împreună cu biletul. După spălare, Petya a găsit în buzunar patru bucăți de hârtie cu fragmente dintr-o adresă IP. Aceste fragmente sunt desemnate prin literele A, B, C și D. Recuperați adresa IP. În răspunsul dvs., furnizați secvența de litere care reprezintă fragmentele în ordinea corespunzătoare adresei IP.

Sarcina este inclusă în Examenul de stat unificat în informatică pentru clasa a 11-a sub numărul 12.

La înregistrarea în sistemul informatic, fiecărui utilizator i se dă o parolă.

La înregistrarea într-un sistem informatic, fiecărui utilizator i se dă o parolă formată din 15 caractere și care conține cifre și majuscule. Astfel, sunt folosite K simboluri diferite. Fiecare astfel de parolă dintr-un sistem informatic este scrisă cu un număr minim posibil și același număr întreg de octeți (se folosește codarea caracter cu caracter și toate caracterele sunt codificate cu același număr și minim posibil de biți). Determinați cantitatea de memorie alocată de acest sistem pentru înregistrarea a N parole.

Sarcina este inclusă în Examenul de stat unificat în informatică pentru clasa a 11-a sub numărul 13.

În unele țări, plăcuțele de înmatriculare ale mașinilor sunt formate din majuscule.

Într-o anumită țară numărul mașinii K caracterele de lungime sunt formate din majuscule (se folosesc M litere diferite) și orice cifre zecimale. Literele și cifrele pot apărea în orice ordine. Fiecare astfel de număr în program de calculator este scris cu cel mai mic și același număr întreg de octeți (în acest caz, se folosește codarea caracter cu caracter și toate caracterele sunt codificate cu același și minim număr posibil de biți). Determinați cantitatea de memorie alocată de acest program pentru înregistrarea N numere.

Sarcina este inclusă în Examenul de stat unificat în informatică pentru clasa a 11-a sub numărul 13.

Soluție unificată de examen de stat (informatică)

1. Sarcină. Câte sunt în notația binară a numărului hexazecimal 12F0 16 ?

Explicaţie.

Să transformăm numărul 12F0 16 la sistemul de numere binar: 12F0 16 = 1001011110000 2 .

Să numărăm numărul de unități: sunt 6.

Raspuns: 6.

2. Sarcină Funcția logică F este dat de expresia (¬ z ) ∧ x ∨ x ∧ y . Determinați ce coloană a tabelului de adevăr al funcției F fiecare dintre variabile corespunde x, y, z.

AC 1

AC 2

AC 3

Funcţie

Scrieți literele din răspunsul dvs x, y, z în ordinea în care apar coloanele lor corespunzătoare (întâi - litera corespunzătoare coloanei 1; apoi - litera corespunzătoare coloanei a 2-a; apoi - litera corespunzătoare coloanei a 3-a). Scrieți literele din răspuns într-un rând; nu este nevoie să puneți niciun separator între litere. Exemplu. Să fie dată expresia x → y , în funcție de două variabile x și y , și tabelul de adevăr:

AC 1

AC 2

Funcţie

Apoi, prima coloană corespunde variabilei y , iar coloana a 2-a corespunde variabilei X . În răspunsul tău trebuie să scrii: yx.

Explicaţie.

Această expresie este o disjuncție a două conjuncții. Putem observa că ambii termeni au un multiplicator X. Adică la x = 0 suma va fi egală cu 0. Deci, pentru variabilă X Doar a treia coloană este potrivită.

În al optulea rând al tabelului X = 1, iar valoarea funcției este 0. Acest lucru este posibil numai dacă z = 1, y = 0, adică variabila1 − z , și variabila2 − y.

Răspuns: zyx.

3. Sarcină În figura din dreapta, harta rutieră a districtului N este reprezentată sub formă de grafic; tabelul conține informații despre lungimile acestor drumuri (în kilometri).

Deoarece tabelul și diagrama au fost desenate independent una de cealaltă, numerotarea așezărilor din tabel nu are nimic de-a face cu denumiri de litere pe grafic. Determinați lungimea drumului de la punctul B la punctul E. Notați un număr întreg în răspunsul dvs. - așa cum este indicat în tabel.

Explicaţie.

Punctul B este singurul punct cu cinci drumuri, ceea ce înseamnă că P6 îi corespunde, iar punctul E este singurul punct cu patru drumuri, ceea ce înseamnă că P4 îi corespunde.

Lungimea drumului de la P6 la P4 este de 20.

Raspuns: 20.

4. Sarcină Un fragment al bazei de date oferă informații despre relațiile de familie. Pe baza datelor furnizate, determinați câți descendenți direcți (adică copii și nepoți) ai lui Pavlenko A.K. sunt menționate în tabelul 1.

tabelul 1

Nume_I.O.

Podea

2146

Krivich L.P.

2155

Pavlenko A.K.

2431

Khitruk P. A.

2480

Krivich A. A.

2302

Pavlenko E. A.

2500

Sokol N. A.

3002

Pavlenko I.A.

2523

Pavlenko T. Kh.

2529

Khitruk A.P.

2570

Pavlenko P. I.

2586

Pavlenko T. I.

2933

Simonyan A. A.

2511

Sokol V. A.

3193

Biba S. A.

masa 2

ID de părinte

ID_Copil

2146

2302

2146

3002

2155

2302

2155

3002

2302

2431

2302

2511

2302

3193

3002

2586

3002

2570

2523

2586

2523

2570

2529

2431

2529

2511

2529

3193

SAU

Pentru operațiunile de grup cu fișiere, sunt folosite măști de nume de fișier. Masca este o secvență de litere, numere și alte caractere permise în numele fișierelor, care poate conține, de asemenea, următoarele caractere:

Simbolul „?” (semnul de întrebare) înseamnă exact un caracter arbitrar.

Simbolul „*” (asterisc) înseamnă orice secvență de caractere de lungime arbitrară, inclusiv „*” poate specifica și o secvență goală.

Există 6 fișiere în director:

inconformist.hartă

inconformist.mp3

taverna.mp4

revolver.mp4

vera.mp3

zveri.mp3

Mai jos sunt opt ​​măști. Câte dintre ele sunt care corespund exact patru fișiere dintr-un anumit director?

*ver*.mp*

**?ver?*.mp?

?*ver*.mp?*

*v*r*?.m?p*

???*???.mp*

???*???.m*

*a*.*a*

*a*.*p*

Explicaţie.

Din tabelul 2 vedem că Pavlenko A.K. (ID 2155) are doi copii, ID-urile lor: 2302 și 3002.

Pavlenko E. A. (ID 2302) are trei copii, iar Pavlenko I. A. (ID 3002) are doi.

Astfel, Pavlenko A.K. are șapte descendenți direcți: doi copii și cinci nepoți.

Raspuns: 7.

SAU

Să ne uităm la fiecare mască:

1. Cinci fișiere vor fi selectate pe baza măștii *ver*.mp*:

inconformist.mp3

taverna.mp4

revolver.mp4

vera.mp3

zveri.mp3

2. Prin masca *?ver?*.mp? Vor fi selectate trei fișiere:

inconformist.mp3

taverna.mp4

zveri.mp3

3. Prin mască?*ver*.mp?* vor fi selectate patru fișiere:

inconformist.mp3

taverna.mp4

revolver.mp4

zveri.mp3

4. Un fișier va fi selectat pe baza măștii *v*r*?.m?p*:

inconformist.hartă

5. Vor fi selectate trei fișiere pe baza măștii???*???.mp*:

inconformist.mp3

taverna.mp4

revolver.mp4

6. Patru fișiere vor fi selectate pe baza măștii???*???.m*:

inconformist.hartă

inconformist.mp3

taverna.mp4

revolver.mp4

7. Un fișier va fi selectat folosind masca *a*.*a*:

inconformist.hartă

8. Vor fi selectate patru fișiere pe baza măștii *a*.*p*:

inconformist.hartă

inconformist.mp3

taverna.mp4

vera.mp3

Adică trei măști care corespund exact patru fișiere dintr-un director dat.

Raspuns: 3.

Răspuns: 7|3

5. Sarcină Mesajele care conțin doar patru litere sunt transmise prin canalul de comunicare: P, O, S, T; Pentru transmisie, se folosește un cod binar care permite decodificarea fără ambiguitate. Pentru literele T, O, P se folosesc următoarele cuvinte de cod: T: 111, O: 0, P: 100.

Specificați cel mai scurt cuvânt de cod pentru litera C, la care codul va permite decodarea fără ambiguități. Dacă există mai multe astfel de coduri, indicați codul cu cea mai mică valoare numerică.

Explicaţie.

Litera C nu poate fi codificată ca 0, deoarece 0 este deja luat.

Litera C nu poate fi codificată ca 1, deoarece codificarea literei T începe cu 1.

Litera C nu poate fi codificată ca 10, deoarece codificarea literei P începe cu 10.

Litera C nu poate fi codificată ca 11, deoarece codificarea literei T începe cu 11.

Litera C poate fi codificată ca 101, care este cea mai mică valoare posibilă.

Raspuns: 101.

6. Sarcină Intrarea algoritmului este un număr natural N. Algoritmul construiește un nou număr R din acesta după cum urmează.

1. Se construiește o reprezentare binară a numărului N.

2. Încă două cifre sunt adăugate la această înregistrare din dreapta conform următoarei reguli:

A) se adună toate cifrele notației binare, iar restul împărțirii sumei la 2 se adaugă la sfârșitul numărului (în dreapta). De exemplu, înregistrarea 11100 este convertită în înregistrarea 111001;

B) aceleași acțiuni sunt efectuate pe această intrare - restul împărțirii sumei cifrelor la 2 se adaugă la dreapta.

Înregistrarea obținută în acest fel (are două cifre mai mult decât în ​​înregistrarea numărului original N) este o înregistrare binară a numărului dorit R.

Vă rugăm să indicați acest lucru cel mai mic număr N, pentru care rezultatul algoritmului este mai mare de 125. În răspuns, scrieți acest număr în sistemul numeric zecimal.

SAU

Artistul Calculator are două echipe cărora li se atribuie numere:

1. adăugați 2,

2. înmulțiți cu 5.

Efectuând primul dintre ele, Calculatorul adaugă 2 la numărul de pe ecran, iar prin efectuarea celui de-al doilea îl înmulțește cu 5.

De exemplu, programul 2121 este un program

inmultiti cu 5,

adauga 2,

inmultiti cu 5,

adauga 2,

care transformă numărul 1 în numărul 37.

Notați ordinea comenzilor într-un program care convertește numărul 2 în numărul 24 și nu conține mai mult de patru comenzi. Introduceți numai numere de comandă.

Explicaţie.

Acest algoritm adaugă un număr sau 10 la sfârșit, dacă notația sa binară a fost conținută inițial numar impar unități, sau 00 dacă este egal.

126 10 = 1111110 2 poate rezulta din funcționarea algoritmului de la numărul 11111 2 .

11111 2 = 31 10 .

Raspuns: 31.

SAU

Să rezolvăm problema invers și apoi să scriem comenzile primite de la dreapta la stânga.

Dacă numărul nu este divizibil cu 5, atunci se obține prin comanda 1, dacă este divizibil, atunci prin comanda 2.

22 + 2 = 24 (echipa 1)

20 + 2 = 22 (echipa 1)

4 * 5 = 20 (echipa 2)

2 + 2 = 4 (comanda 1)

Răspuns: 1211.

Răspuns: 31|1211

7. Atribuirea. Este dat un fragment dintr-o foaie de calcul. Formula a fost copiată din celula E4 în celula D3. La copiere, adresele celulelor din formulă s-au schimbat automat. Care este valoarea numerică a formulei din celula D3?

=$B2 *C$3

Notă: semnul $ indică adresarea absolută.

SAU

Este dat un fragment dintr-o foaie de calcul.

=(A1-3)/(B1-1)

=(A1-3)/(C1-5)

C1/(A1 – 3)

Ce număr întreg trebuie scris în celula A1, astfel încât diagrama construită din valorile celulelor din intervalul A2:C2 să se potrivească cu imaginea? Se știe că toate valorile celulelor din intervalul considerat nu sunt negative.

Explicaţie.

Formula, atunci când este copiată în celula D3, s-a schimbat în =$B1 * B$3.

B1 * B3 = 4 * 2 = 8.

Raspuns: 8.

SAU

Să înlocuim valorile lui B1 și C1 în formulele A2:C2:

A2 = (A1-3)/5

B2 = (A1-3)/5

C2 = 10/(A1-3)

Deoarece A2 = B2, atunci C2 = 2 * A2 = 2 * B2

Să înlocuim:

10/(A1-3) = 2*(A1-3)/5

A1 - 3 = 5

A1 = 8.

Raspuns: 8.

8. Sarcină Notați numărul care va fi tipărit ca urmare a următorului program. Pentru confortul dumneavoastră, programul este prezentat în cinci limbaje de programare.

DE BAZĂ

Piton

DIM S, N CA INTEGER

S=0

N=0

ÎN CAZUL S

S = S + 8

N=N+2

MERGE ÎNCET

PRINT N

s = 0

n=0

în timp ce s

s = s + 8

n = n + 2

print(n)

Limbajul algoritmic

Pascal

alg

început

întreg n, s

n:= 0

s:= 0

nts pa s

s:= s + 8

n:=n+2

kts

ieșire n

con

var s, n: întreg;

ÎNCEPE

s:= 0;

n:= 0;

în timp ce s

ÎNCEPE

s:= s + 8;

n:=n+2

Sfârşit;

scrie(n)

Sfârşit.

Si

#include

int main()

( int s = 0, n = 0;

în timp ce (s

printf("%d\n", n);

întoarce 0;

Explicaţie.

Bucla while rulează până când condiția s este adevărată

Raspuns: 28.

9. Misiunea. Care este cantitatea minimă de memorie (în KB) care trebuie rezervată pentru a putea fi stocată orice imagine bitmap de 64x64 pixeli, cu condiția ca imaginea să poată folosi 256 diverse culori? În răspunsul dvs., notați doar un număr întreg; nu este nevoie să scrieți o unitate de măsură.

SAU

Fragmentul muzical a fost înregistrat în format mono, digitizat și salvat ca fișier fără a utiliza compresia de date. Dimensiunea fișierului rezultat este de 24 MB. Apoi aceeași piesă muzicală a fost înregistrată din nou în format stereo (înregistrare pe două canale) și digitalizată cu o rezoluție de 4 ori mai mare și o rată de eșantionare de 1,5 ori mai mică decât prima dată. Nu a fost efectuată compresia datelor. Specificați dimensiunea fișierului în MB a rescrierii rezultate. În răspunsul dvs., notați doar un număr întreg; nu este nevoie să scrieți o unitate de măsură.

Explicaţie.

Un pixel este codificat de 8 biți de memorie.

Total 64 * 64 = 2 12 pixeli.

Memoria ocupată de imaginea 2 12 * 8 = 2 15 biți = 2 12 octeți = 4 KB.

Raspuns: 4.

SAU

Când înregistrați același fișier în format stereo, volumul acestuia crește de 2 ori. 24 * 2 = 48

Când rezoluția crește de 4 ori, volumul crește și el de 4 ori. 48 * 4 = 192

Când frecvența de eșantionare este redusă de 1,5 ori, volumul acesteia scade de 1,5 ori. 192 / 1,5 = 128.

Raspuns: 128.

Răspuns: 4|128

10. Sarcină Igor alcătuiește un tabel de cuvinte de cod pentru transmiterea mesajelor; fiecare mesaj are propriul cuvânt de cod. Ca cuvinte de cod, Igor folosește cuvinte din 5 litere, care conțin doar literele P, I, R, iar litera P apare exact o dată. Fiecare dintre celelalte litere valide poate apărea în cuvântul de cod de câte ori sau deloc. Câte cuvinte de cod diferite poate folosi Igor?

Explicaţie.

Igor poate face 2 4 cuvinte care pun prima litera P. În mod similar, îl puteți pune pe locul doi, al treilea, al patrulea și al cincilea. Obținem 5*2 4 = 80 de cuvinte.

Raspuns: 80.

11. Sarcina Mai jos, două funcții recursive (proceduri) sunt scrise în cinci limbaje de programare: F și G.

DE BAZĂ

Piton

DECLARE SUB F(n)

DECLARE SUB G(n)

SUB F(n)

DACĂ n > 0 atunci G(n - 1)

TERMINAT SUB

SUB G(n)

IMPRIMARE "*"

DACA n > 1 ATUNCI F(n - 3)

TERMINAT SUB

def F(n):

Dacă n > 0:

G(n - 1)

def G(n):

Imprimare("*")

Dacă n > 1:

F(n - 3)

Limbajul algoritmic

Pascal

alg F(întregul n)

început

Dacă n > 0 atunci

G(n - 1)

Toate

con

alg G(întreg n)

început

Concluzie „*”

Dacă n > 1 atunci

F(n - 3)

Toate

con

procedura F(n: întreg); redirecţiona;

procedura G(n: întreg); redirecţiona;

procedura F(n: întreg);

ÎNCEPE

Dacă n > 0 atunci

G(n-1);

Sfârşit;

procedura G(n: întreg);

ÎNCEPE

Writeln("*");

Dacă n > 1 atunci

F(n-3);

Sfârşit;

Si

void F(int n);

void G(int n);

void F(int n)(

Dacă (n>0)

G(n-1);

void G(int n)(

Printf("*");

Dacă (n>1)

F(n-3);

Câte asteriscuri vor fi tipărite pe ecran la apelarea F(11)?

Explicaţie.

Să simulăm funcționarea programului:

F(11)

G(10): *

F(7)

G(6): *

F(3)

G(2): *

F(-1)

Raspuns: 3.

12. Misiunea În terminologia rețelelor TCP/IP, o mască de rețea este un număr binar care determină care parte a adresei IP a unei gazde de rețea se referă la adresa rețelei și care parte se referă la adresa gazdei în sine din această rețea. De obicei, masca este scrisă după aceleași reguli ca și adresa IP - sub formă de patru octeți, iar fiecare octet este scris sub forma numar decimal. În acest caz, masca conține mai întâi unu (în cifrele cele mai mari), iar apoi dintr-o anumită cifră există zerouri. Adresa de rețea este obținută prin aplicarea unei conjuncții pe biți la adresa IP a gazdei și masca date.

De exemplu, dacă adresa IP a gazdei este 231.32.255.131 și masca este 255.255.240.0, atunci adresa de rețea este 231.32.240.0.

Pentru un nod cu o adresă IP de 111.81.208.27, adresa de rețea este 111.81.192.0. Care este cea mai mică valoare posibilă a celui de-al treilea octet din stânga măștii? Scrieți răspunsul ca număr zecimal.

Explicaţie.

Să scriem al treilea octet al adresei IP și al adresei de rețea în sistemul de numere binar:

208 10 = 11010000 2

192 10 = 11000000 2

Vedem că primii doi biți ai măștii din stânga sunt unu, ceea ce înseamnă că pentru ca valoarea să fie cea mai mică, biții rămași trebuie să fie zero. Obținem că al treilea octet de mască din stânga este 11000000 2 = 192 10

Răspuns: 192.

13. Misiunea La înregistrarea într-un sistem informatic, fiecărui utilizator i se dă o parolă formată din 15 caractere și care conține doar caractere din setul de 12 caractere: A, B, C, D, E, F, G, H, K, L, M, N. În baza de date Datelor pentru stocarea informațiilor despre fiecare utilizator li se alocă același și minim posibil număr întreg de octeți. În acest caz, se folosește codarea caracter cu caracter a parolelor, toate caracterele sunt codificate cu același număr posibil și minim de biți. Pe lângă parola în sine, în sistem sunt stocate informații suplimentare pentru fiecare utilizator, pentru care este alocat un număr întreg de octeți; acest număr este același pentru toți utilizatorii. Pentru a stoca informații despre 20 de utilizatori, au fost necesari 400 de octeți. Câți octeți sunt alocați pentru stocare Informații suplimentare despre un utilizator? În răspunsul tău, notează doar un număr întreg - numărul de octeți.

Explicaţie.

În funcție de condiție, în număr pot fi folosite 12 litere. Se știe că folosind N biți puteți codifica 2N opțiuni diferite. Din 2 3 4 , atunci sunt necesari 4 biți pentru a înregistra fiecare dintre cele 12 caractere.

Pentru a stoca toate cele 15 caractere ale unei parole, aveți nevoie de 4 · 15 = 60 de biți și, deoarece pentru înregistrare este utilizat un număr întreg de octeți, luăm cel mai apropiat nu mai puțin de un multiplu de opt, acest număr este 64 = 8 · 8 biți (8 octeți).

Fie cantitatea de memorie alocată pentru stocare suplimentară să fie egală cu x, atunci:

20 * (8+ x ) = 400

x = 12

Raspuns: 12.

14. Misiunea Executor Editor primește un șir de numere ca intrare și îl convertește. Editorul poate executa două comenzi, în ambele comenzi v și w reprezintă șiruri de numere.

A) înlocuiți (v, w).

Această comandă înlocuiește prima apariție din stânga a șirului v cu șirul w. De exemplu, rularea comenzii

înlocuiți (111, 27)

convertește șirul 05111150 în șirul 0527150. Dacă nu există apariții ale lui v în șir, atunci rularea comenzii de înlocuire (v, w) nu schimbă acel șir.

B) găsit (v).

Această comandă verifică dacă șirul v apare în Editorul de linii al executorului. Dacă este întâlnită, comanda returnează valoarea booleană „adevărat”, în caz contrar returnează valoarea „falsă”. Linia

interpretul nu se schimbă.

Ciclu

starea BYE

Secvență de comandă

TERMINAT LA Adio

Se execută în timp ce condiția este adevărată.

În proiectare

starea IF

TO echipa1

Comanda ELSE2

TERMINAT DACA

Comanda 1 (dacă condiția este adevărată) sau comanda 2 (dacă condiția este falsă) este executată.

Ce șir va rezulta din aplicarea următoarelor?

program într-un șir format din 68 de cifre consecutive 8? In raspuns

notează șirul rezultat.

START

Găsit până acum (222) SAU găsit (888)

DACA a fost gasit (222)

A înlocui (222, 8)

ELSE înlocuiește (888, 2)

TERMINAT DACA

TERMINAT LA Adio

Sfârşit

Explicaţie.

În 68 de numere consecutive 8 sunt 22 de grupe de trei opt, care vor fi înlocuite cu 22 de doi și vor rămâne doi opt.

68(8) = 22(2) + 2(8)

22(2) + 2(8) = 1(2) + 9(8)

1(2) + 9(8) = 4(2)

4(2) = 1(2) + 1(8) = 28

Raspuns: 28.

15. Misiunea Figura prezintă o diagramă a drumurilor care leagă orașele A, B, C, D, D, E, F, Z, I, K, L, M.

Pe fiecare drum vă puteți deplasa doar într-o singură direcție, indicată de săgeată.

Câte rute diferite există de la orașul A la orașul M?

Explicaţie.

Să începem să numărăm numărul de căi de la sfârșitul traseului - din orașul M. Fie N X - numărul de căi diferite de la orașul A la orașul X, N - numărul total de căi. Puteți veni în orașul M din L sau K, deci N = N M = N L + N K. (*)

De asemenea:

N K = N I;

N L = N I;

N I = N E + N F + N W

N K = N E = 1.

Să adăugăm mai multe vârfuri:

N B = N A = 1;

N B = N B + N A + N G = 1 + 1 + 1 = 3;

N E = N G = 1;

N Г = N A = 1.

Înlocuiți în formula (*): N = N M = 4 + 4 + 4 + 1 = 13.

Raspuns: 13.

Raspuns: 56

16. Misiunea Valoarea expresiei aritmetice: 9 8 + 3 5 – 9 – notate în sistemul numeric cu baza 3. Câte cifre „2” sunt cuprinse în această notație?

Explicaţie.

Să transformăm expresia:

(3 2 ) 8 + 3 5 - 3 2

3 16 + 3 5 - 3 2

3 16 + 3 5 = 100...00100000

100...00100000 - 3 2 = 100...00022200

Numărul rezultat conține trei doi.

Raspuns: 3

17. Atribuirea În limbajul de interogare al motorului de căutare, simbolul „|” este folosit pentru a desemna operația logică „SAU”, iar simbolul „&” este folosit pentru a desemna operația logică „ȘI”. Tabelul arată interogările și numărul de pagini găsite pentru un anumit segment de internet.

Câte pagini (în mii) vor fi găsite pentru interogare?Homer și Odiseea și Iliada?Se crede că toate interogările au fost executate aproape simultan, astfel încât setul de pagini care conțineau toate cuvintele căutate nu s-au modificat în timp

îndeplinirea cererilor.

Explicaţie.

Numărul de cereri din această zonă va fi notat cu Ni. Scopul nostru este N5.

Apoi din tabel găsim că:

N5 + N6 = 355,

N4 + N5 = 200,

N4 + N5 + N6 = 470.

Din prima și a doua ecuație: N4 + 2N5 + N6 = 555.

Din ultima ecuație: N5 = 85.

Raspuns: 85

18. Sarcină Să notăm cu m&n conjuncție pe biți a numerelor întregi nenegative m și n . Deci, de exemplu, 14&5 = 1110 2 &0101 2 = 0100 2 = 4.

Pentru care este cel mai mic număr întreg nenegativȘi formula

x&25 ≠ 0 → (x&17 = 0 → x&A ≠ 0)

este identic adevărat (adică ia valoarea 1 pentru orice valoare întreagă nenegativă a variabilei X )?

Explicaţie.

Să introducem următoarea notație:

(x ∈ A) ≡ A; (x ∈ P) ≡ P; (x ∈ Q) ≡ Q.

Transformând, obținem:

¬P ∨ ¬(Q ∧ ¬A) ∨ ¬P = ¬P ∨ ¬Q ∨ A.

SAU logic este adevărat dacă cel puțin o afirmație este adevărată. Stare ¬P∨ ¬Q = 1 este satisfăcut de razele (−∞, 40) și (60, ∞). Deoarece expresia ¬P∨ ¬Q ∨ A trebuie să fie identic adevărată, expresia A trebuie să fie adevărată în intervalul . Lungimea sa este de 20.

Raspuns: 20.

Raspuns: 8

19. Sarcina Programul folosește un tablou întreg unidimensional A cu indici de la 0 la 9. Valorile elementelor sunt 4, 7, 3, 8, 5, 0, 1, 2, 9, 6, respectiv, i.e. A = 4, A = 7 etc.

Determinați valoarea unei variabile c după executarea următorului fragment al acestui program(scris mai jos în cinci limbaje de programare).

DE BAZĂ

Piton

C=0

PENTRU i = 1 LA 9

DACA A(i)

C = c + 1

T = A(i)

A(i) = A(0)

A(0) = t

ENDIF

Apoi eu

C=0

Pentru i în interval (1,10):

Dacă A[i]

C = c + 1

t = A[i]

A[i] = A

A = t

Limbajul algoritmic

Pascal

c:= 0

nc pentru i de la 1 la 9

dacă A[i]

c:= c + 1

t:= A[i]

A[i] := A

A := t

Toate

kts

c:= 0;

pentru i:= 1 la 9 do

dacă A[i]

ÎNCEPE

c:= c + 1;

t:= A[i];

A[i] := A;

A := t;

Sfârşit;

Si

c = 0;

pentru (i = 1;i

dacă (A[i]

{

c++;

t = A[i];

A[i] = A;

A = t;

}

Explicaţie.

Dacă elementul matricei A[i] este mai mic decât A, atunci programul le schimbă și crește valoarea variabileicde 1. Programul va fi executat de două ori, prima dată schimbând A și A, de la 3 Cuva deveni egal cu 2.

Raspuns: 2.

20. MisiuneaAlgoritmul este scris mai jos în cinci limbaje de programare. Primind un număr ca intrareX, acest algoritm tipărește numărulM. Se știe căX> 100. Specificați cel mai mic astfel de număr (adică mai mare de 100).X, când este introdus, algoritmul afișează 26.

DE BAZĂ

Piton

DIM X, L, M CA INTEGER

INTRARE X

L=X

M=65

DACA L MOD 2 = 0 ATUNCI

M=52

ENDIF

ÎN CAZUL L M

DACA L>M ATUNCI

L = L – M

ALTE

M = M – L

ENDIF

MERGE ÎNCET

PRINT M

x = int(input())

L = x

M=65

dacă L % 2 == 0:

M=52

în timp ce L != M:

dacă L > M:

L = L - M

altceva:

M = M - L

imprimare (M)

Limbajul algoritmic

Pascal

alg

început

int x, L, M

intrare x

L:= x

M:= 65

dacă mod(L,2)=0

Acea

M:= 52

Toate

la revedere L M

dacă L > M

Acea

L:= L – M

in caz contrar

M:= M – L

Toate

kts

pinul M

con

var x, L, M: întreg;

ÎNCEPE

readln(x);

L:=x;

M:= 65;

dacă L mod 2 = 0 atunci

M:= 52;

în timp ce L M face

dacă L > M atunci

L:= L - M

altfel

M:= M – L;

scrieln(M);

Sfârşit.

Si

#include

void main()

{

int x, L, M;

scanf("%d", &x);

L = x;

M = 65;

dacă (L % 2 == 0)

M = 52;

în timp ce (L != M)(

dacă (L > M)

L = L - M;

altfel

M = M - L;

}

printf("%d", M);

}

Explicaţie.

În corpul buclei, numerele M și L scad până devin egale. Pentru ca 26 să fie tipărit la final, ambele numere trebuie să fie la un moment dat egale cu 26. Să mergem de la sfârșit la început: la pasul anterior, un număr era 26, iar celălalt era 26 + 26 = 52. Unul pas mai devreme, 52 + 26 = 78 și 52. Înainte de aceasta, 78 + 52 = 130 și 52. Adică, cel mai mic număr posibil este 130. Și deoarece numărul găsit este par, atunci lui M i se va atribui valoarea 52, care va duce la rezultatul dorit.

Raspuns: 130.

21. SarcinaScrieți în răspuns cea mai mică valoare a variabilei de intrarek, la care programul produce același răspuns ca și cu valoarea de intrarek= 10. Pentru confortul dumneavoastră, programul este furnizat în cinci limbaje de programare.

DE BAZĂ

Piton

DIM K, I ATÂTÂT

INTRARE K

I = 1

WHILE F(I)

I = I + 1

MERGE ÎNCET

TIPARI I

FUNCȚIA F(N)

F=N*N*N

FUNCȚIE DE sfârșit

FUNCȚIA G(N)

G = 2*N + 3

FUNCȚIE DE sfârșit

def f(n):

întoarce n*n*n

def g(n):

returnează 2*n+3

k = int(input())

i = 1

în timp ce f(i)

i+=1

print(i)

Limbajul algoritmic

Pascal

alg

început

int i, k

intrare k

eu:= 1

nts pentru moment f(i)

i:= i + 1

kts

ieșire i

con

alg întreg f(întreg n)

început

valoare:= n * n * n

con

alg întreg g(întreg n)

început

valoare:= 2*n + 3

con

var

k, i: longint;

funcția f(n: longint): longint;

ÎNCEPE

f:= n * n * n;

Sfârşit;

funcția g(n: longint): longint;

ÎNCEPE

g:= 2*n + 3;

Sfârşit;

ÎNCEPE

readln(k);

i:= 1;

în timp ce f(i)

i:= i+1;

scrie(i)

Sfârşit.

Si

#include

lung f(n lung) (

returnează n * n * n;

}

g lung (n lung) (

întoarce 2*n + 3;

}

int main()

{

k lung, i;

scanf("%ld", &k);

i = 1;

în timp ce(f(i)

i++;

printf("%ld", i);

întoarce 0;

}

Explicaţie.

Acest program compară Și si adauga laiunitate până când . Și scoate prima valoare a variabileiila care

Dacă k = 10, programul va tipări numărul 3.

Să notăm inegalitatea: de aici obținem cea mai mică valoarek = 3.

Raspuns: 3.

22. MisiuneaPerformer May15 convertește numărul de pe ecran. Artistul are două echipe cărora li se atribuie numere:

1. Adăugați 1

2. Înmulțiți cu 2

Prima comandă mărește numărul de pe ecran cu 1, a doua îl înmulțește cu 2. Programul pentru interpretul May15 este o secvență de comenzi. Câte programe există pentru care, având în vedere numărul inițial 2, rezultatul este numărul 29 și în același timp traiectoria de calcul conține numărul 14 și nu conține numărul 25?

Calea de calcul a unui program este o succesiune de rezultate

executarea tuturor comenzilor programului. De exemplu, pentru programul 121 cu numărul inițial 7, traiectoria va consta din numerele 8, 16, 17.

Explicaţie.

În plus, legea comutativă este valabilă, ceea ce înseamnă că ordinea comenzilor din program nu contează pentru rezultat.

Toate echipele măresc numărul inițial, astfel încât numărul de echipe nu poate depăși (30 − 21) = 9. În acest caz, numărul minim de echipe este de 3.

Astfel, numărul de comenzi poate fi 3, 4, 5, 6, 7, 8 sau 9. Prin urmare, ordinea comenzilor nu contează, pentru fiecare număr de comenzi există un set de comenzi, care poate fi aranjat în orice ordine.

Să luăm în considerare toate seturile posibile și să calculăm numărul de opțiuni pentru plasarea comenzilor în ele. Setul 133 are 3 opțiuni posibile Locație. Setul 1223 - 12 aranjamente posibile: acesta este numărul de permutări cu repetări (1+2+1)!/(1! · 2! · 1!)). Set 12222 - 5 opțiuni. Set 111222 - 20 de opțiuni posibile. Set 11123 - 20 de opțiuni. Set 111113 - 6 opțiuni, set 1111122 - 21 opțiuni, set 11111112 - 8 opțiuni, set 111111111 - o opțiune.

În total avem 3 + 12 + 5 + 20 + 20 + 6 + 21 + 8 + 1 = 96 de programe.

Raspuns: 96.

Raspuns: 96.

Raspuns: 13

23. MisiuneaCâte seturi diferite de valori variabile booleene există?X1 , X2 , ... X9 , y1 , y2 , ... y9 , care îndeplinesc toate condițiile enumerate mai jos?

(¬ (X1 y1 )) ≡ (X2 y2 )

(¬ (X2 y2 )) ≡ (X3 y3 )

(¬ (X8 y8 )) ≡ (X9 y9 )

Răspunsul nu trebuie să enumere toate seturile diferite de valori variabile.X1 , X2 , ... X9 , y1 , y2 , ... y9 , pentru care acest sistem de egalități este satisfăcut. Ca răspuns, trebuie să indicați numărul de astfel de seturi.

Explicaţie.

Din ultima ecuație aflăm că există trei opțiuni posibile pentru valorile x8 și y8: 01, 00, 11. Să construim un arbore de opțiuni pentru prima și a doua pereche de valori.

Astfel, avem 16 seturi de variabile.

Arborele de opțiuni pentru perechea de valori 11:

Avem 45 de opțiuni. Astfel, sistemul va avea 45 + 16 = 61 de seturi de soluții diferite.

Raspuns: 61.

Răspuns: 1024

24. MisiuneaUn număr întreg pozitiv care nu depășește 10 este primit pentru procesare9 . Trebuie să scrieți un program care să afișeze suma cifrelor acestui număr mai mică de 7. Dacă numărul nu conține cifre mai mici de 7, trebuie să afișați 0. Programatorul a scris programul incorect. Mai jos, acest program este prezentat în cinci limbaje de programare pentru confortul dumneavoastră.

DE BAZĂ

Piton

DIM N, CIFRE, SUMA CA LUNGA

INTRARE N

SUMA = 0

CÂND N > 0

CIFRE = N MOD 10

DACA CIFRE

SUMA = SUMA + 1

TERMINAT DACA

N=N\10

MERGE ÎNCET

IMPRIMARE CIFRE

N = int(input())

suma = 0

în timp ce N > 0:

cifra = N% 10

dacă cifră

suma = suma + 1

N = N // 10

print(cifra)

Limbajul algoritmic

Pascal

alg

început

întreg N, cifră, sumă

intrare N

suma:= 0

nts în timp ce N > 0

cifra:= mod(N,10)

dacă cifră

suma:= suma + 1

Toate

N:= div(N,10)

kts

cifra de iesire

con

var N, cifra, suma: longint;

ÎNCEPE

readln(N);

suma:= 0;

în timp ce N > 0 fac

ÎNCEPE

cifra:= N mod 10;

dacă cifră

suma:= suma + 1;

N:= N div 10;

Sfârşit;

writeln(cifra)

Sfârşit.

Si

#include

int main()

{

int N, cifră, sumă;

scanf("%d", &N);

suma = 0;

în timp ce (N > 0)

{

cifra = N% 10;

dacă (cifră

suma = suma + 1;

N = N/10;

}

printf("%d",cifra);

return0;

}

Faceți următoarele în secvență.

1. Scrieți ce va afișa acest program când introduceți numărul 456.

2. Dați un exemplu de număr din trei cifre, când este introdus, programul produce răspunsul corect.

3. Găsiți toate erorile din acest program (poate fi una sau mai multe). Se știe că fiecare eroare afectează doar o linie și poate fi corectată fără a schimba alte linii. Pentru fiecare eroare:

1) notează rândul în care s-a făcut eroarea;

2) indicați cum să remediați eroarea, de ex. aduce varianta corecta linii.

Este suficient să indicați erorile și cum să le corectați pentru un limbaj de programare. Vă rugăm să rețineți că trebuie să găsiți erori într-un program existent și nu să scrieți al dvs., eventual folosind un algoritm de soluție diferit. Corectarea erorilor ar trebui să afecteze numai linia în care se află eroarea.

Explicaţie.

Soluția folosește o notație de program Pascal. Puteți utiliza programul în oricare dintre celelalte patru limbi.

1. Programul va tipări numărul 4.

2. Un exemplu de număr, când este introdus, programul oferă răspunsul corect: 835.

Notă pentru recenzent. Programul nu funcționează corect deoarece variabila afișată este incorectă și suma este incrementată incorect. În consecință, programul va funcționa corect dacă cea mai mare cifră din număr (cea din stânga) este egală cu suma cifrelor mai mici de 7.

3. Există două erori în program.

Prima greseala. Creștere incorectă a cantității.

Linie de eroare:

suma:= suma + 1;

Remedierea corectă:

suma:= suma + cifra;

A doua greseala. Răspuns incorect afișat pe ecran.

Linie de eroare:

writeln(cifra)

Remedierea corectă:

scrie (sumă)

25. MisiuneaAvând în vedere un tablou întreg de 20 de elemente. Elementele matricei pot lua valori întregi de la –10.000 la 10.000 inclusiv. Descrieți în limbaj natural sau într-unul dintre limbajele de programare un algoritm care vă permite să găsiți și să afișați numărul de perechi de elemente de matrice în care cel puțin un număr este divizibil cu 3. În această problemă, o pereche înseamnă două matrice consecutive elemente. De exemplu, pentru o matrice de cinci elemente: 6; 2; 9; –3; 6 – răspuns: 4.

Datele de intrare sunt declarate așa cum se arată mai jos în exemple pentru unele limbaje de programare și limbaj natural. Este interzisă utilizarea variabilelor care nu sunt descrise mai jos, dar este permisă să nu se folosească unele dintre variabilele descrise.

DE BAZĂ

Piton

CONST N CA INTEGER = 20

DIM A (1 TO N) CA INTEGER

DIM I CA INTEGER,

J CA INTREG,

K CA INTEGER

PENTRU I = 1 LA N

INTRARE A(I)

APOI EU

...

Sfârşit

# permis, de asemenea

# folosiți două

# variabile întregi j și k

a =

n = 20

pentru i în intervalul (0, n):

a.append(int(input()))

...

Limbajul algoritmic

Pascal

alg

început

int N = 20

celtab a

int i, j, k

nc pentru i de la 1 la N

introduceți a[i]

kts

...

con

const

N = 20;

var

a: matrice de numere întregi;

i, j, k: întreg;

ÎNCEPE

pentru i:= 1 la N do

readln(a[i]);

...

Sfârşit.

Si

Limbajul natural

#include

#definiți N 20

int main() (

int a[N];

int i, j, k;

pentru (i = 0; i

scanf("%d", &a[i]);

...

întoarce 0;

}

Declarăm un tablou A de 20 de elemente.

Declarăm variabile întregi I, J, K.

Într-o buclă de la 1 la 20, introducem elemente ale matricei A de la 1 la 20.

Ca răspuns, trebuie să furnizați un fragment al programului (sau o descriere a algoritmului în limbaj natural), care ar trebui să fie situat în locul punctelor de suspensie. De asemenea, puteți scrie soluția într-un alt limbaj de programare (indicați numele și versiunea limbajului de programare folosit, de exemplu Free Pascal 2.6) sau sub formă de diagramă. În acest caz, trebuie să utilizați aceleași date de intrare și variabile care au fost propuse în condiție (de exemplu, într-un eșantion scris în limbaj natural).

k:= k+1

Toate

kts

ieșire k

Pascal

k:= 0;

pentru i:= 1 la N-1 do

dacă (a[i] mod 3=0) sau (a[i] mod 3=0) atunci

inc(k);

scrieln(k);

Si

k = 0;

pentru (i = 0; i

dacă (a[i]%3 == 0 || a%3 == 0)

k++;

printf("%d", k);

Limbajul natural

Scriem valoarea inițială egală cu 0 în variabila K. Într-o buclă de la primul element la penultimul, găsim restul împărțirii elementului curent și următor al tabloului la 3. Dacă primul sau al doilea din rezultatul restul este egal cu 0, mărim variabila K cu unu. După finalizarea buclei, imprimați valoarea variabilei K

26. AtribuireDoi jucători, Petya și Vanya, joacă următorul joc. În fața jucătorilor sunt două grămezi de pietre. Jucătorii se pe rând, Petya face prima mișcare. Pe parcursul unei ture, jucătorul poate adăuga o piatră la una dintre grămezi (la alegere) sau poate dubla numărul de pietre din grămadă. De exemplu, să fie 10 pietre într-o grămadă și 7 pietre în alta; Vom nota o astfel de poziție în joc prin (10, 7). Apoi, într-o singură mișcare, puteți obține oricare dintre cele patru poziții: (11, 7), (20, 7), (10, 8), (10, 14). Pentru a face mișcări, fiecare jucător are un număr nelimitat de pietre.

Jocul se termină când numărul total de pietre din grămezi devine cel puțin 73. Câștigătorul este jucătorul care a făcut ultima mișcare, adică. primul care a primit o astfel de poziție încât grămezii să conțină 73 de pietre sau mai mult.

Vom spune că un jucător are o strategie câștigătoare dacă poate câștiga cu orice mișcare a adversarului său. A descrie strategia unui jucător înseamnă a descrie ce mișcare ar trebui să facă în orice situație pe care o poate întâlni cu jocuri diferite de la adversar. De exemplu, cu pozițiile inițiale (6, 34), (7, 33), (9, 32), Petya are o strategie câștigătoare. Pentru a câștiga, trebuie doar să dubleze numărul de pietre din a doua grămadă.

Exercitiul 1.Pentru fiecare dintre pozițiile de start (6, 33), (8, 32), indicați ce jucător are strategia câștigătoare. În fiecare caz, descrieți strategia câștigătoare; explicați de ce această strategie duce la o victorie și indicați cel mai mare număr de mișcări pe care un câștigător ar putea avea nevoie pentru a câștiga cu această strategie.

Sarcina 2.Pentru fiecare dintre pozițiile de start (6, 32), (7, 32), (8, 31), indicați ce jucător are strategia câștigătoare. În fiecare caz, descrieți strategia câștigătoare; explicați de ce această strategie duce la o victorie și indicați cel mai mare număr de mișcări pe care un câștigător ar putea avea nevoie pentru a câștiga cu această strategie.

Sarcina 3.Pentru poziția de start (7, 31), indicați ce jucător are strategia câștigătoare. Descrieți o strategie câștigătoare; explicați de ce această strategie duce la o victorie și indicați cel mai mare număr de mișcări pe care un câștigător ar putea avea nevoie pentru a câștiga cu această strategie. Construiește un arbore cu toate jocurile posibile cu strategia câștigătoare pe care ai specificat-o. Imaginați-vă copacul ca pe o imagine sau o masă.

(7,31)

Total 38

(7,31+1)=(7,32)

Total 39

(7+1,32)=(8,32)

Total 40

(8+1,32)=(9,32)

Total 41

(9,32*2)=(9,64)

Total 73

(8,32+1)=(8,33)

Total 41

(8,33*2)=(8,66)

Total 74

(8*2,32)=(16,32)

Total 48

(16,32*2)=(16,64)

Total80

(8,32*2)=(8,64)

Total 72

(8,64*2)=(8,128)

Total 136

(7+1,31)=(8,31)

Total 39

(8,31+1)=(8,32)

Total 40

(8+1,32)=(9,32)

Total 41

(9,32*2)=(9,64)

Total 73

(8,32+1)=(8,33)

Total41

(8,33*2)=(8,66)

Total 74

(8*2,32)=(16,32)

Total 48

(16,32*2)=(16,64)

Total 80

(8,32*2)=(8,64)

Total 72

(8,64*2)=(8,128)

Total 136

(7*2,31)=(14,31)

Total 45

(14,31*2)=(14,62)

Total 76

(7,31*2)=(7,62)

Total 69

(7,62*2)=(7,124)

Total 131

Exercitiul 1.În pozițiile inițiale (6, 33), (8, 32), Vanya are o strategie câștigătoare. Cu poziția inițială (6, 33), după prima mutare a lui Petya, poate rezulta una dintre următoarele patru poziții: (7, 33), (12, 33), (6, 34), (6, 66). Fiecare dintre aceste poziții conține mai puțin de 73 de pietre. Mai mult, din oricare dintre aceste poziții Vanya poate obține o poziție care conține cel puțin 73 de pietre, dublând numărul de pietre din a doua grămadă. Pentru poziția (8, 32), după prima mutare a lui Petya, poate rezulta una dintre următoarele patru poziții: (9, 32), (16, 32), (8, 33), (8, 64). Fiecare dintre aceste poziții conține mai puțin de 73 de pietre. Mai mult, din oricare dintre aceste poziții Vanya poate obține o poziție care conține cel puțin 73 de pietre, dublând numărul de pietre din a doua grămadă. Astfel, Vanya, la orice mișcare a lui Petya

câștigă cu prima lui mișcare.

Sarcina 2.În pozițiile inițiale (6, 32), (7, 32) și (8, 31), Petya are o strategie câștigătoare. Cu poziția inițială (6, 32), trebuie mai întâi să se deplaseze pentru a obține poziția (6, 33), din pozițiile inițiale (7, 32) și (8, 31). După prima mișcare, Petya trebuie să obțină poziția (8, 32). Pozițiile (6, 33) și (8, 32) au fost luate în considerare la analiza sarcinii 1. În aceste poziții, strategia câștigătoare este pentru jucătorul care va ajunge pe locul al doilea (acum acesta este Petya). Această strategie a fost descrisă în analiza sarcinii 1. Astfel, Petya câștigă cu a doua sa mutare în orice joc al lui Vanya.

Sarcina 3.În poziția inițială (7, 31), Vanya are o strategie câștigătoare. După prima mutare a lui Petit, poate apărea una dintre cele patru poziții: (8, 31), (7, 32), (14, 31) și (7, 62). În pozițiile (14, 31) și (7, 62) Vanya poate câștiga într-o singură mișcare dublând numărul de pietre din a doua grămadă. Pozițiile (8, 31) și (7, 32) au fost luate în considerare la analiza sarcinii 2. În aceste poziții, jucătorul care trebuie să facă o mișcare (acum Vanya) are o strategie câștigătoare. Această strategie este descrisă în analiza sarcinii 2. Astfel, în funcție de joc, Petya Vanya câștigă la prima sau a doua mișcare.

27. AtribuireUn experiment pe termen lung pentru a studia câmpul gravitațional al Pământului se desfășoară într-un laborator de fizică. În fiecare minut, un număr întreg pozitiv este transmis către laborator prin canalul de comunicare - citirea curentă a dispozitivului Sigma 2015. Numărul de numere transmise în serie este cunoscut și nu depășește 10000. Toate numerele nu depășesc 1000. Timpul în care are loc transmiterea poate fi neglijat.

Este necesar să se calculeze „valoarea beta” a unei serii de citiri ale instrumentului - produsul minim par a două citiri, între momentele de transmitere ale cărora au trecut cel puțin 6 minute. Dacă nu se poate obține un astfel de produs, răspunsul este considerat egal cu –1.

Vi se oferă două sarcini legate de această sarcină: sarcina A și sarcina B. Puteți rezolva ambele sarcini sau una dintre ele în funcție de alegerea dvs. Nota finală se acordă ca maxim al notelor pentru sarcinile A și B. Dacă soluția la una dintre sarcini nu este prezentată, atunci nota pentru această sarcină este considerată a fi 0 puncte. Sarcina B este o versiune complicată a sarcinii A, conține Cerințe suplimentare la program.

A. Scrieți un program în orice limbaj de programare pentru a rezolva problema, în care datele de intrare vor fi stocate într-o matrice, după care vor fi verificate toate perechile posibile de elemente. Înainte de program, indicați versiunea limbajului de programare.

ASIGURAȚI-VĂ că indicați că programul este o soluție pentru SARCINA A.

Punctajul maxim pentru îndeplinirea sarcinii A este de 2 puncte.

B. Scrieți un program pentru a rezolva problema dată care va fi eficient atât în ​​timp, cât și în memorie (sau cel puțin una dintre aceste caracteristici).

Un program este considerat eficient în timp dacă timpul de operare este

programul este proporțional cu numărul de citiri primite de la dispozitivul N, adică. Când N crește cu un factor de k, timpul de rulare al programului ar trebui să crească de cel mult de k ori.

Un program este considerat eficient de memorie dacă dimensiunea memoriei utilizată în program pentru stocarea datelor nu depinde de numărul N și nu depășește 1 kilobyte.

Înainte de program, indicați versiunea limbajului de programare și descrieți pe scurt algoritmul utilizat.

Asigurați-vă că indicați că programul este o soluție pentru SARCINA B.

Scorul maxim pentru un program corect care este eficient în timp și memorie este de 4 puncte.

Scorul maxim pentru un program corect care este eficient în timp, dar ineficient de memorie este de 3 puncte. ADUCERE AMINTE! Nu uitați să indicați la ce sarcină se referă fiecare dintre programele pe care le trimiteți.

Datele de intrare sunt prezentate după cum urmează. Prima linie specifică numărul N – numărul total de citiri ale instrumentului. Este garantat că N > 6. Fiecare dintre următoarele N linii conține un număr întreg pozitiv – următoarea citire a dispozitivului.

Exemple de date de intrare:

11

12

45

5

3

17

23

21

20

19

18

17

Programul trebuie să scoată un număr - produsul descris în condiție sau -1 dacă nu este posibil să obțineți un astfel de produs.

Exemplu de ieșire pentru exemplul de intrare de mai sus:

54

Explicaţie.

Sarcina B (soluția pentru sarcina A este dată mai jos, vezi programul 4). Pentru ca produsul să fie par, cel puțin un factor trebuie să fie par, prin urmare, atunci când se caută produse potrivite, citirile pare ale dispozitivului pot fi luate în considerare în perechi cu oricare altele, iar cele impare - numai cu cele pare.

Pentru fiecare citire cu numărul k, începând cu k = 7, se consideră toate perechile care sunt admisibile în condițiile problemei, în care această citire a fost obținută a doua. Produsul minim al tuturor acestor perechi se va obține dacă prima din pereche se ia citirea minimă adecvată dintre toate cele primite de la începutul recepției până la citirea cu numărul k - 6. Dacă următoarea citire este pară, minimul dintre cele primite. cele anterioare pot fi oricare, dacă sunt impare - numai par.

Pentru a obține o soluție eficientă în timp, pe măsură ce introduceți datele, trebuie să vă amintiți citirile minime absolute și minime egale în fiecare moment, înmulțiți fiecare citire nou obținută cu minimul corespunzător care a existat cu 6 elemente mai devreme și selectați minimul de toate astfel de produse.

Deoarece fiecare citire minimă curentă este utilizată după ce au fost introduse încă 6 elemente și nu mai este necesară după aceea, este suficient să stocați doar ultimele 6 minime. Pentru a face acest lucru, puteți utiliza o matrice de 6 elemente și o puteți completa ciclic pe măsură ce sunt introduse datele. Mărimea acestei matrice nu depinde de numărul total de citiri introduse, așa că această soluție va fi eficientă nu numai în timp, ci și în memorie. Pentru a stoca minimele absolute și chiar, trebuie să utilizați două astfel de matrice. Mai jos este un exemplu de astfel de program scris într-un limbaj algoritmic.

Exemplul 1. Un exemplu de program corect într-un limbaj algoritmic. Programul este eficient atât în ​​timp, cât și în memorie.

alg

început

întreg s = 6 | distanța necesară între citiri

întreg amax = 1001 | mai mare decât citirea maximă posibilă

întreg N

intrare N

int a | următoarea citire a instrumentului

celtab mini | minimele curente ale ultimelor s elemente

celtab minichet | chiar minime ale ultimelor elemente

i întreg

| introduceți primele citiri, fixați minimele

ma intreaga; ma:= amax | citire minimă

papură intacte; papură:= amax | lectură minimă uniformă

nc pentru i de la 1 la s

intrare a

ma:= imin(ma, a)

mini := ma

minichet := rush

kts

int mp = amax*amax | valoarea minima a produsului

întreg n

nc pentru i de la s+1 la N

intrare a

dacă mod(a,2)=0

apoi p:= a * mini

altfel dacă se grăbeşte

atunci n:= a * minieven

in caz contrar p:= amax*amax;

Toate

Toate

mp:= imin(mp, n)

ma:= imin(ma, a)

dacă mod(a,2) = 0 atunci rushes:= imin(rushes,a) all

mini := ma

minichet := rush

kts

dacă mp = amax*amax atunci mp:=-1 all

Ieșire MP

con

Alte implementări sunt posibile. De exemplu, în loc să umpleți ciclic o matrice, puteți muta elementele acesteia de fiecare dată. În exemplul de mai jos, nu minimele sunt stocate și deplasate, ci valorile originale. Acest lucru necesită puțin mai puțină memorie (o matrice este suficientă în loc de două), dar soluția cu schimburi este mai puțin eficientă în timp decât cu umplerea ciclică. Totuși, timpul de funcționare rămâne proporțional cu N, astfel încât punctajul maxim pentru această soluție este și el de 4 puncte.

Programul 2. Un exemplu de program corect în Pascal.

Programul folosește schimburi, dar este eficient în timp și memorie

var

N: întreg;

a: matrice de numere întregi; (stocarea citirilor instrumentului)

a_:întreg; (intrarea in lectura urmatoare)

p:întreg;

i, j: întreg;

ÎNCEPE

readln(N);

(Introducerea numerelor primelor s)

pentru i:=1 la s do readln(a[i]);

(Introduceți valorile rămase, căutați produsul minim)

ma:= amax; eu:= amax;

mp:=amax*amax;

pentru i:= s + 1 la N începe

readln(a_);

în cazul în care o

dacă (a mod 2 = 0) și (a

dacă a_ mod 2 = 0 atunci p:= a_ * ma

altfel daca eu

else p:= amax* amax;

dacă (pag

(deplasați elementele matricei auxiliare la stânga)

pentru j:= 1 la s - 1 do

a[j] := a;

a[s] := a_

Sfârşit;

dacă mp = amax*amax atunci mp:=-1;

scrieln(mp)

Sfârşit.

Dacă, în loc de o matrice mică de dimensiune fixă ​​(fie circulară, fie cu schimburi), toate datele originale (sau toate minimele curente) sunt stocate, programul rămâne eficient în timp, dar devine ineficient de memorie, deoarece memoria necesară crește proporțional cu N. Mai jos este un exemplu de astfel de program în limbajul Pascal. Programele similare (și în esență similare) sunt evaluate nu mai mult de 3 puncte.

Programul 3. Un exemplu de program corect în Pascal. Programul este eficient în timp, dar ineficient în memorie

const s = 6; (distanța necesară între citiri)

amax = 1001; (mai mult decât citirea maximă posibilă)

var

N, p, i: întreg;

ma:intger; (număr minim fără ultimii s)

eu:intger; (număr par minim fără ultimul s)

mp:întreg; (valoarea minima a produsului)

ÎNCEPE

readln(N);

(Introducerea tuturor citirilor instrumentului)

pentru i:=1 la N face readln(a[i]);

ma:= amax;

eu:= amax;

mp:= amax*amax;

pentru i:= s + 1 la N do

ÎNCEPE

în cazul în care o

dacă (a mod 2 = 0) și (a

eu:= a;

dacă a[i] mod 2 = 0 atunci p:= a[i] * ma

altfel daca eu

else p:= amax * amax;

dacă (pag

Sfârşit;

dacă mp = amax*amax atunci mp:= -1;

scrieln(mp)

Sfârşit.

Este posibilă și o soluție de căutare exhaustivă, în care se găsesc produsele tuturor perechilor posibile și se selectează cel minim dintre ele. Mai jos (vezi programul 4) este un exemplu de astfel de soluție. Aceste soluții (și similare) nu sunt eficiente nici în timp, nici în memorie. Este o soluție pentru sarcina A, dar nu o soluție pentru sarcina B. Scorul pentru o astfel de soluție este de 2 puncte.

Programul 4. Un exemplu de program corect în Pascal. Programul nu este ineficient nici în timp, nici în memorie

const s = 6; (distanța necesară între citiri)

var

N: întreg;

a: matrice de numere întregi; (toate citirile instrumentului)

mp:întreg; (valoarea minima a produsului)

i, j: întreg;

ÎNCEPE

readln(N);

(Introducerea valorilor dispozitivului)

pentru i:=1 la N do

readln(a[i]);

p.t.:= 1000 * 1000 + 1;

pentru i:= 1 la N-s încep

pentru j:= i+s la N începe

dacă (a[i]*a[j] mod 2 = 0) și (a[i]*a[j]

atunci mp:= a[i]*a[j]

Sfârşit;

Sfârşit;

dacă mp = 1000 * 1000 + 1 atunci mp:= -1;

scrieln(mp)

CU lumea modernă tehnologii și realități de programare, dezvoltare Examen de stat unificat în informatică are puține în comun. Există câteva puncte de bază, dar chiar dacă înțelegi puțin despre sarcini, asta nu înseamnă că vei deveni în cele din urmă un dezvoltator bun. Dar există foarte multe domenii în care este nevoie de specialiști IT. Nu poți greși dacă vrei să ai un venit stabil peste medie. În IT îl vei obține. Cu condiția, desigur, să aveți abilitățile adecvate. Și te poți dezvolta și crește aici cât vrei, pentru că piața este atât de uriașă încât nici nu ți-o poți imagina! Mai mult, nu se limitează doar la statul nostru. Lucrează pentru orice companie din oriunde în lume! Toate acestea sunt foarte inspiratoare, așa că pregătirea pentru examenul de stat unificat în informatică să fie primul pas minor, urmat de ani de auto-dezvoltare și îmbunătățire în acest domeniu.

Structura

Partea 1 conține 23 de întrebări cu răspuns scurt. Această parte conține sarcini cu răspuns scurt care necesită să formulați independent o secvență de simboluri. Temele testează materialul tuturor blocurilor tematice. 12 sarcini se referă la nivel de bază, 10 sarcini pentru un nivel crescut de complexitate, 1 sarcină pentru un nivel ridicat de complexitate.

Partea 2 conține 4 sarcini, dintre care prima nivel mai înalt dificultate, restul de 3 sarcini nivel inalt dificultăți. Sarcinile din această parte implică scrierea unui răspuns detaliat în formă liberă.

Pentru executare foaie de examen Alocate 3 ore 55 minute (235 minute). Se recomandă să petreceți 1,5 ore (90 de minute) pentru a finaliza sarcinile din partea 1. Se recomandă să dedicați restul timpului îndeplinirii sarcinilor din partea 2.

Explicații pentru notarea temelor

Finalizarea fiecărei sarcini din partea 1 valorează 1 punct. Sarcina din partea 1 este considerată finalizată dacă examinatorul dă un răspuns care corespunde codului de răspuns corect. Finalizarea sarcinilor din partea 2 este notată de la 0 la 4 puncte. Răspunsurile la sarcinile din partea 2 sunt verificate și evaluate de experți. Numărul maxim de puncte care pot fi obținute pentru îndeplinirea sarcinilor din partea 2 este de 12.

Acțiune