Menu
Coddy logo textTech

Zliczanie

Lekcja 17 z 20 w kursie Zagadki matematyczne w Coddy.

Trójka pitagorejska {a, b, c} tworzy trójkąt prostokątny. 

Niech p będzie obwodem trójkąta prostokątnego o bokach o długościach całkowitych, {a, b, c}.

Istnieje dokładnie jedna trójka dla p=12: {3,4,5}, p=24: {6,8,10} oraz dla p=30: {5,12,13}.

Dla p = 120 istnieją dokładnie trzy trójki: {20,48,52}, {24,45,51}, {30,40,50}.

Natomiast dla p=20 nie istnieje żadna trójka.

Dla p≤120 istnieje jedna wartość p z trzema trójkami (p=120), trzy wartości p z dwiema trójkami (p=60,84,90) i dokładnie 13 wartości p z tylko jedną trójką.

challenge icon

Wyzwanie

Trudny

Ile wartości p≤1000 ma dokładnie jedną trójkę?

Napisz funkcję count1PythagoreanTripletSolution, która przyjmuje liczbę całkowitą N i zwraca liczbę liczb całkowitych p≤N, dla których istnieje dokładnie jedna całkowitoliczbowa trójka pitagorejska.

Spróbuj swoich sił

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <stdbool.h>
#include "solution.h"

int main() {
    int n;
    if (scanf("%d", &n) != 1) n = 0;
    int r = count1PythagoreanTripletSolution(n);
    printf("%d\n", r);
    return 0;
}

Wszystkie lekcje w sekcji Zagadki matematyczne

7Najmniejsza wspólna wielokrotność

WprowadzenieProblem

2Wielokrotności 3 lub 5

ProblemRozwiązanie bez pętli

5Równanie diofantyczne

WprowadzenieProblem

8Trójka pitagorejska

WprowadzenieTrójkąt prostokątnyZliczanie

Poćwicz samodzielnie: Kompilator C online