Hej wpisze program oto co mam zrobić:
- Do 10 elementowej tablicy LOSUJEMY liczby w zakresie 1-100
- Do 20 elementowej tablicy WPISUJEMY liczby w zakresie 1-100 z klawiatury (Należy zabezpieczyć zakres za pomocą pętli while)
- Wyświetlić losowane liczby po uprzednim posortowania tablicy
- Sprawdzić ile z wpisanych do tablicy wartościowości trafiło się w tablicy wylosowanej
Nie mogę zrobić 4 podpunktu. Program działa lecz zamiast wyświetlić ile razy liczba występuje w drugiej tablicy, program wyświetla że 0 a to nie prawda kombinuje na każdy sposób lecz nie mogę dojść do rozwiązania naprowadzi mnie ktoś co jest źle? Oto program:
#include <iostream>
#include <ctime>
#include <cstdlib>
#include <stdio.h>
#include <windows.h>
#include <stdlib.h>
using namespace std;
int wylosowane[100];
int losowana=0;
int wi[20];
int tab_odp[100];
void sortowanie_babelkowe(int *tab, int n)
{
for (int i=1; i<n; i++)
{
for (int j=n-1; j>=1; j--)
{
if (tab[j]<tab[j-1])
{
int bufor;
bufor=tab[j-1];
tab[j-1]=tab[j];
tab[j]=bufor;
}
}
}
}
int main()
{
srand(time(NULL));
HANDLE hOut;
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), FOREGROUND_GREEN | FOREGROUND_INTENSITY);
cout<<"losowanie liczb nacisnij enter:"<<endl ;
getchar();
for(int i=0; i<100; i++)
{
losowana++;
wylosowane[i] = rand()%100+1;
}
cout<<"podaj 20 liczb z zakresu 1-100"<<endl;
for (int i=1; i<21; i++)
{
cout<<"Podaj "<<i<<" element tablicy: ";
cin>>wi[i];
if(wi[i]<=0||wi[i]>=101)
cout<<"Podana liczba jest spozas zakresu zacznij od nowa!"<<endl;
while(wi[i]<=0||wi[i]>=101);
}
cout<<"Sortowanie elementow:"<<endl;
sortowanie_babelkowe(wylosowane, 100);
sortowanie_babelkowe(wi, 20);
cout<<"Liczby posorotwane nacisnij enter:"<<endl ;
getchar();
cout<<"Wylosowane liczby:"<<endl;
for(int i=0; i<100; i++)
cout<<wylosowane[i]<<endl;
cout<<"Liczy wystepujace w wylosowanych nasisnij enter aby zobaczyc:"<<endl;
getchar();
for (int i = 0; i<100; i++) tab_odp[i] ;
for (int i = 0; i<100; i++)
{
for (int i = 0; i<20; i++)
{
if (wylosowane[i] == wi[i])
{
tab_odp[i]+= 1 ;
}
}
}
for (int i = 0; i<100; i++) cout << "Cyfra " << wylosowane[i] << " wystepuje w wpisanych "<< tab_odp[i] << " razy" << endl;
system("PAUSE");
return 0;
}