Losowanie liczb z przedziału i wyswietlenie na tablicy

0

Zadanie mam wczytanie gornego i dolnego przedziału ,nastepnie wylosowanie losowyh liczb i wprowadzenie do tabicy. Wszystko pieknie do liczb >0 kiedy wpisuje wartosc od -15 do 10 albo losuje same 0 albo nie z tego przedziału, próbowałem wielu kombinacji ale nic :< zaczynam dopiero programować w c++ więc prosze o wyrozumiałość :)

 #include "stdafx.h"
#include <iostream>
#include <conio.h>
#include <ctime>
#include <cstdlib>

using namespace std;

class macierz{
private:
   double **wymiar;
   int kolumna,wiersz;
   double liczba;
public:

   macierz()
  
   {
 
       cout<<"Podaj liczbe kolumn: ";
       cin>>kolumna;
	
       cout<<"Podaj liczbe wierszy:";
       cin>>wiersz;
       wymiar = new double*[kolumna];
       for(int i=0;i<kolumna;++i)  {
           wymiar[i]=new double[wiersz];}
	   int a,b;
	   cout<<"Podaj zakres od: ";
	   cin >>a;
	   cout<<"Do: ";
	   cin >>b;

       cout<<"\n\n\t\t\tLiczby wylosowane:\n\n";
srand(time(NULL));
int k,w;
       for ( k=0; k < kolumna ; ++k) {
           for (w=0; w<wiersz; ++w) {        
               wymiar[k][w] =liczba= rand()% b+a ;}}
}
 void wydruk()
   {
       for (int k=0; k < kolumna ; ++k) {
       cout << endl;
       for (int w=0; w<wiersz; ++w) {        
       cout << wymiar[k][w] << "\t";
       }}

   }
};


int _tmain(int argc, _TCHAR* argv[])
{
int t; 
   macierz m;
   m.wydruk();

_getch();
return 0;
 

}

0
wymiar[k][w] =liczba= rand()%(b-a)+a ;
0

super teraz wszystko chodzi chociaż wpisując zakres od 1 do 10 to nigdy nie losuje mi 10

0

Miałeś w szkole dodawanie?

ymiar[k][w]=rand()% (b+1-a)+a ;

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