Matura z informatyki - rozwiązania zadań  

Matura 2017

Zadanie 1.2

W celu rozwiązania zadania, musimy przede wszystkim utworzyć pętlę, w której będziemy sprawdzać podzielność liczb z tablicy przez liczbę p (operacja modulo). Aby zmniejszyć złożoność obliczeniową, będziemy szukać wartości max1 i max2 (odpowiednio dla dwóch boków) w tym samym przebiegu pętli.

Można również zapisać ten algorytm w języku C++. Poniżej zamieszczono program, który rozwiązuje problem dla wariantu drugiego z zadania 1.1.

#include <iostream>

using namespace std;

int main()
{
    int max1, max2;
    max1 = max2 = 0;
    int tab[6] = { 15, 12, 10, 6, 5, 1 };
    int p = 5;
    for (int i = 0; i <= 5; i++) {
        if (tab[i] % p != 0) {
            if (tab[i] > max1) {
                max2 = max1;
                max1 = tab[i];
            }
            else if (tab[i] > max2)
                max2 = tab[i];
        }
    }

    cout << max1 * max2;
    return 0;
}

© 2017 MaturaInformatyka.pl || Kontakt: admin(malpa)maturainformatyka.pl

Search