Sari la conținut
SimuleazăSimulează.

Citire de pseudocod (6) — două structuri repetitive imbricate

Algoritmi — citirea unui algoritm dat în pseudocod, urmărirea valorilor variabilelor, transcrierea în limbajul C++ și echivalența structurilor repetitive

4 întrebări din Algoritmi — citirea unui algoritm dat în pseudocod, urmărirea valorilor variabilelor, transcrierea în limbajul C++ și echivalența structurilor repetitive.

Primele întrebări

  1. Se consideră algoritmul de mai jos, descris în pseudocod. În algoritm, a % b este restul împărțirii numărului natural a la numărul natural nenul b, iar [a/b] este câtul aceleiași împărțiri, adică partea întreagă a raportului.

    Variabilele n și m primesc două numere naturale nenule, fiecare cel mult egal cu 100. Structura repetitivă interioară se execută complet la fiecare trecere prin cea exterioară.

    citește n, m
    c ← 0
    ┌pentru i←1,n execută
    │ ┌pentru j←1,m execută
    │ │ ┌dacă (i + j) % 3 = 0 atunci
    │ │ │ c ← c + 1
    │ │ └■
    │ └■
    └■
    scrie c

    a) Scrieți valoarea care se afișează dacă se citesc, în această ordine, numerele 5 și 4. (6 p)

  2. Se consideră algoritmul de mai jos, descris în pseudocod. În algoritm, a % b este restul împărțirii numărului natural a la numărul natural nenul b, iar [a/b] este câtul aceleiași împărțiri, adică partea întreagă a raportului.

    Variabilele n și m primesc două numere naturale nenule, fiecare cel mult egal cu 100. Structura repetitivă interioară se execută complet la fiecare trecere prin cea exterioară.

    citește n, m
    c ← 0
    ┌pentru i←1,n execută
    │ ┌pentru j←1,m execută
    │ │ ┌dacă (i + j) % 3 = 0 atunci
    │ │ │ c ← c + 1
    │ │ └■
    │ └■
    └■
    scrie c

    b) Scrieți două numere naturale nenule care pot fi citite pentru variabilele n și m astfel încât valoarea afișată să fie 4. (6 p)

  3. Se consideră algoritmul de mai jos, descris în pseudocod. În algoritm, a % b este restul împărțirii numărului natural a la numărul natural nenul b, iar [a/b] este câtul aceleiași împărțiri, adică partea întreagă a raportului.

    Variabilele n și m primesc două numere naturale nenule, fiecare cel mult egal cu 100. Structura repetitivă interioară se execută complet la fiecare trecere prin cea exterioară.

    citește n, m
    c ← 0
    ┌pentru i←1,n execută
    │ ┌pentru j←1,m execută
    │ │ ┌dacă (i + j) % 3 = 0 atunci
    │ │ │ c ← c + 1
    │ │ └■
    │ └■
    └■
    scrie c

    c) Scrieți programul C++ corespunzător algoritmului dat. (10 p)

  4. Se consideră algoritmul de mai jos, descris în pseudocod. În algoritm, a % b este restul împărțirii numărului natural a la numărul natural nenul b, iar [a/b] este câtul aceleiași împărțiri, adică partea întreagă a raportului.

    Variabilele n și m primesc două numere naturale nenule, fiecare cel mult egal cu 100. Structura repetitivă interioară se execută complet la fiecare trecere prin cea exterioară.

    citește n, m
    c ← 0
    ┌pentru i←1,n execută
    │ ┌pentru j←1,m execută
    │ │ ┌dacă (i + j) % 3 = 0 atunci
    │ │ │ c ← c + 1
    │ │ └■
    │ └■
    └■
    scrie c

    d) Scrieți în pseudocod un algoritm echivalent cu cel dat, în care structura repetitivă interioară, de tip pentru, să fie înlocuită cu o structură repetitivă de tip cât timp … execută. Structura exterioară rămâne neschimbată. (6 p)

Deschide în aplicație

Din același capitol