Wstęp do programowania, lekcja 4. Dostępna pamięć: 256 MB. 1-7.11.2014 W tym zadaniu Twój program powinien obliczyć, ile liczb z przedziału od a do b jest podzielnych przez k. Wejście Pierwszy i jedyny wiersz wejścia zawiera trzy liczby całkowite a, b, k (1 ≤ a ≤ b ≤ 2 · 109 , 1 ≤ k ≤ 2 · 109 ), oddzielone spacjami, oznaczające odpowiednio początek i koniec przedziału oraz liczbę, przez którą dzielimy. Wyjście Wyjście powinno zawierać jedną liczbę całkowitą, równą liczbie liczb z przedziału [a, b], które dzielą się przez k. Przykład Dla danych wejściowych: 3 10 2 poprawnym wynikiem jest: 4 a dla danych wejściowych: 10 20 10 poprawnym wynikiem jest: 2 C++, tylko include #iostream z góry dzięki, daje naj
Program najpierw wczytuje trzy liczby całkowite a, b, i k z wejścia za pomocą funkcji cin. Następnie, inicjujemy zmienną count na 0, która będzie służyć do zliczania liczby liczb z przedziału [a, b], które dzielą się przez k.
Następnie, używamy pętli for, aby przejść przez każdą liczbę z przedziału [a, b] i sprawdzić, czy dzieli się przez k. Jeśli tak, zwiększamy count o 1.
Na końcu program wypisuje wynik, który jest przechowywany w count.
Uwaga: W przypadku gdy liczby a, b, k są bardzo duże (bliskie górnemu limitowi), powyższe rozwiązanie może być zbyt wolne lub może wystąpić przekroczenie zakresu zmiennej int. W takim przypadku należy skorzystać z bardziej wydajnych lub dokładniejszych typów danych, takich jak long long.
Odpowiedź:
#include <iostream>
using namespace std;
int main() {
int a, b, k;
cout << "Podaj początek przedziału: ";
cin >> a;
cout << "Podaj koniec przedziału: ";
cin >> b;
cout << "Podaj liczbę, przez którą chcesz dzielić: ";
cin >> k;
int result = 0;
for (int i = a; i <= b; i++) {
if (i % k == 0) {
result++;
}
}
cout << "Liczba liczb z przedziału [" << a << ", " << b << "], które są podzielne przez " << k << " wynosi: " << result << endl;
return 0;
}
Odpowiedź:
Oto rozwiązanie w języku C++:
#include <iostream>
using namespace std;
int main() {
int a, b, k;
cin >> a >> b >> k;
int count = 0;
for (int i = a; i <= b; i++) {
if (i % k == 0) {
count++;
}
}
cout << count << endl;
return 0;
}
Program najpierw wczytuje trzy liczby całkowite a, b, i k z wejścia za pomocą funkcji cin. Następnie, inicjujemy zmienną count na 0, która będzie służyć do zliczania liczby liczb z przedziału [a, b], które dzielą się przez k.
Następnie, używamy pętli for, aby przejść przez każdą liczbę z przedziału [a, b] i sprawdzić, czy dzieli się przez k. Jeśli tak, zwiększamy count o 1.
Na końcu program wypisuje wynik, który jest przechowywany w count.
Uwaga: W przypadku gdy liczby a, b, k są bardzo duże (bliskie górnemu limitowi), powyższe rozwiązanie może być zbyt wolne lub może wystąpić przekroczenie zakresu zmiennej int. W takim przypadku należy skorzystać z bardziej wydajnych lub dokładniejszych typów danych, takich jak long long.