SZUKAJ NA TYM BLOGU

Zadanie 1. Analiza algorytmu (0–6) ()

Arkusz

https://cke.gov.pl/images/_EGZAMIN_MATURALNY_OD_2015/Arkusze_egzaminacyjne/2018/formula_od_2015/informatyka/MIN-R1_1P-182.pdf

Rozwiązanie

Zasady oceniania i sprawozdanie

https://cke.gov.pl/images/_EGZAMIN_MATURALNY_OD_2015/Arkusze_egzaminacyjne/2018/formula_od_2015/Zasady_oceniania/MIN-R2_1P-182_zasady_oceniania.pdf

https://cke.gov.pl/images/_EGZAMIN_MATURALNY_OD_2015/Informacje_o_wynikach/2018/sprawozdanie/Sprawozdanie%202018%20-%20Informatyka.pdf


Zapis w C++:

#include <iostream> 
using namespace std;
int main() {
    int n;
    cout << "Wpisz liczbe n ";
    cin >> n;
    int p = 1;
    int q = n;
    while (p < q) {
        int s = (p + q) / 2;
        if (s * s * s < n) {
            p = s + 1;
        } else {
            q = s;
        }
    }
    cout << "Wynik dla n = " << n << " to "<< p;
    return 0;
}

Zapis w python:

n = int(input("Wpisz liczbe n "))
p = 1
q = n

while p < q:
    s = (p + q) // 2
    if s**3 < n:
        p = s + 1
    else:
        q = s

print(f"Wynik dla n = {n} to {p}")


Zapis w java:

import java.util.Scanner;

public class CubeRoot {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);

        System.out.print("Wpisz liczbe n: ");
        int n = scanner.nextInt();
        int p = 1;
        int q = n;

        while (p < q) {
            int s = (p + q) / 2;
            if (Math.pow(s, 3) < n) {
                p = s + 1;
            } else {
                q = s;
            }
        }

        System.out.println("Wynik dla n = " + n + " to " + p);
    }
}