Losowanie liczb podzielnych przez 7 z zakresu <-99;99>

0

Mam problem z zadaniem:
Napisz program sumujący elementy podzielne przez 7 - tablicy jednowymiarowej. Liczba maksymalna elementów to 30. Zakres losowania od -99 do 99.

#include<iostream>
#include<ctime>
#include<cstdlib>
using namespace std;
int main(void)
{
int Array[30];
int suma=0;
srand(time(0));
for(int i=0;i<30;i++)
if(Array[i]%7==0)
{
cout<<(Array[i]=rand()%199-99)<<" ";
suma+=Array[i];
}
cout<<endl<<"Suma elementow tablicy wynosi: "<<suma<<endl;
return 0;
}

Problem polega na tym, że wyświetla liczby niepodzielne przez 7. Gdzie popełniłem błąd ?

0

Nigdzie nie sprawdzasz, czy liczba, którą wyświetlasz i sumujesz jest podzielna przez siedem: masz sprawdzanie wyżej niż przypisanie.

A tak w ogóle, korzystaj raczej z std::uniform_int_distribution.

1

Cały pomysł jest błędny. Losuj [-14,14] i mnóż wynik przez 7.

0

Nie jestem pewien, który z nas źle zrozumiał polecenie, @kq , ale ja mam wrażenie, że trzeba wygenerować z określonego zakresu, a potem podać sumę podzielnych przez siedem. Niezależnie od tego, jakie się wygenerowały.

1

Losowanie liczb podzielnych przez 7

Tytuł dla mnie dość jasny ;​)

Z treści w sumie nic nie wynika, poza tym, ze masz wylosować do 30 elementów podzielnych przez 7 z zakresu [-99,99] (czyli [-98, 98]).

1 użytkowników online, w tym zalogowanych: 0, gości: 1