Witam chodzę do 2TI i mam zadanie z informatyki roz. a mój problem polega na podzielności liczby 3 oraz 4 jednocześnie jak na zdjęciu jakieś pomysły tak bym cokolwiek zrozumiał jako początkujący ?
0
1
Drugi if. Po co sprawdzasz czy warunki w nawiasach są równe?
2
Sprawdzenie czy warunki są równe będzie prawdziwe również gdy oba nie będą podzielne. Ponadto:
- Nie duplikuj kodu, masz idealnego kandydata na funkcję.
- Nie wklejaj obrazków kodu, tylko kod. https://dsp.krzaq.cc/post/445/jak-zadawac-pytania-na-forum/
0
chciałem zrobić żeby liczba była jednocześnie podzielna przez 3 i 4
1
A jaki operator logiczny jest prawdziwy gdy jego dwa wejścia są prawdziwe?
0
bramka AND ?
0
No właśnie. To dlaczego używasz ==
zamiast &&
?
0
Szczerze to teraz nie wiem jak to pisałem to myślałem ze tak będzie lepiej ale jednak się okazało ze to tak nie działa i wpadłem w dziurę gdzie nie wiedziałem co zrobić. Dziękuję.
0
Bardziej ogólnie:
#include <iostream>
#include <numeric>
#include <vector>
using namespace std;
template< typename T >
bool isNumberDivide( T number , vector<T> dividers )
{
static_assert( is_integral_v<T> , "Must be integral." );
for( const auto& divider : dividers )
{
if( number%divider != 0 ) return false;
}
return true;
}
int main()
{
cout << isNumberDivide(350,{35,5,10}) << endl;
return 0;
}
0
TomaszLiMoon napisał(a):
#include <iostream> #include <numeric> #include <vector> using namespace std; bool isDivide( int number , vector<int> dividers ) { return number % accumulate( dividers.begin() , dividers.end() , 1 , multiplies<int>() ) == 0; } int main() { cout << isDivide( 150 , {3,5,10} ); return 0; }
Doprawdy?
Kiedy mnie uczono matematyki to 30 dzieliło się przez 3,5,10
https://ideone.com/0aeSYU