Wyszukiwanie lidera w zbiorze (tablicy)
Kod był wyświetlany 2062 razy.
    /*
  Name: Wyszukiwanie lidera
  Copyright: GPL GNU
  Date: 15-05-10 08:06
  Description: 
*/

#include <iostream>
using namespace std;

int main()
{
  int rozmiar,i,licznik=1,liczba;
  bool stan ;
  int *tab;
  int n,zakres;

  cout<<"\n\n\tProgram sprawdza czy w znajduje siÄ™ lider:  ";

  cout<<"\n\n\tPodaj liczbe elementow w tablicy: ";
  cin>>n;
  cout<<"\n\n\tPodaj gorny zakres zbioru: ";
  cin>>zakres;
  cout<<"\n\n\tPodaj sprawdzana liczbe: ";
  cin>>liczba;
  system("cls");

  tab= new int[n]; //deklaracja tablicy dymamicznej przechowującej wartości liczby wygenerowanych

  /*incjalizacja generatora liczb psudolosowych i wypełnie tablicy liczbami
    pseudolosowymi*/
  srand((unsigned)time(0));

  for(i = 0; i < n; i++)
      if((rand() % 2)!=0) //losowanie liczby 0,1
      tab[i] = rand() % (zakres +1);  // losowanie liczby i zapis do tablicy
    else
      tab[i] = liczba; // jeżeli warunek nie jest spełniony to do tablicy jest zapisywana liczba
                        //wprowadzona z klawiatury

 /*Sprawdzamy, czy podana liczba jest liderem*/

  if(!licznik)
    stan = false;
  else
  {
    licznik= 0;
    for(i = 0; i < n; i++)
      if(liczba == tab[i])
      licznik++;
    stan = licznik > n / 2; //prawda lub fałsz
  }

   /*Wyświetlanie zawartosci tablicy*/

  cout<<"\n\nLiczby znajdujace sie w zbiorze to:\n\n";
  for(i = 0; i < n; i++)
      if(tab[i]==liczba)
            cout<<"("<<tab[i]<<")"<<"\t";

    else
      cout <<tab[i]<<"\t";

  cout <<"\n\n";;
  if(stan)
    cout << liczba << " jest liderem i w zborze wystepuje: " << licznik<<" razy";
  else
    cout << "Podana liczba nie jest liderem\n\n";

  cin.ignore();
  getchar();
  return 0;
}
    
Pobierz plik tekstowy
Załączniki
Administrator WJL
PHP&SQL coded by NOVA-IT