Autor Wiadomość
Ricko
PostWysłany: Śro 21:13, 16 Lut 2011    Temat postu:

SORTOWANIE BĄBELKOWE

Cytat:
#include<iostream>
#include<cstdio>
#include<cstdlib>
#include<iomanip>
using namespace std;

void zamien (int &a, int &b)
{
int pom = a ;
a = b;
b = pom;
}

void sortowanie_babelkowe(int tab[], int n)
{
int pom,i,j;
for (j=n-1; j>0; j--)
{
for (i=0; i<j; i++)
{if (tab[i]>tab[i+1])

zamien(tab[i], tab[i+1]);
}
}
}

void wypisz(int tab[], int n)
{
for (int i=0; i<n; i++)
{
cout<<setw( 8 )<<tab[i];
}
}

int main()

{
int tablica[20];
srand(time(NULL));
for (int i=0; i<20; i++)
tablica[i]=rand()%100;
wypisz(tablica, 20);
sortowanie_babelkowe(tablica, 20);
cout<<endl<<endl<<"Posortowano"<<endl<<endl;
wypisz(tablica,20);

getchar();
return 0;
}
Ricko
PostWysłany: Nie 11:27, 12 Gru 2010    Temat postu: Język C++ Tablice

TABLICA Z OKREŚLONĄ ILOŚCIĄ KOMÓREK

Cytat:
#include<stdio>
#include<iostream>
using namespace std;

int main()
{
int tab[10]; /*Deklarowanie tablicy dziesięcioelementowej */
for (int i=0; i<10; i++)
tab[i ]=i*2;
for (int i=0; i<10; i++)
cout<<"tab["<<i<<"]="<<tab[i ]<<endl; /* Wypisywanie tablicy */
getchar();
return 0;
}


Wynik:
Cytat:
tab[0]=0
tab[1]=2
tab[2]=4
...
tab[9]=18


Komentarz:
Cytat:
W C++ tablice numerowane są od 0, a nie od 1 jak to było w Pascalu, sama deklaracja zmiennych wygląda następująca int nazwa_zmiennej [liczba elementów tablicy]

_____________________________________________________________

LOSOWANIE TABLICY


Cytat:
#include<stdio>
#include<iostream>
using namespace std;

int main()
{
int tab[10];
srand(time(NULL)); /* Czyszczenie tabeli przed losowaniem */
for (int i=0; i<10; i++)
tab[i]=rand()%100; /*Losowanie liczb z zakresu od 0 do 100 */
for (int i=0; i<10; i++)
cout<<"tab["<<i<<"]="<<tab[i]<<endl; /*Wypisywanie tabeli */

getchar();
return 0;
}

_____________________________________________________________

TABLICA LOSOWANA Z LICZBĄ KOMÓREK WPISANYCH Z KLAWIATURY

Cytat:
#include<stdio>
#include<iostream>
#include<stdlib>
using namespace std;

void losuj (int tab[], int rozmiar) /* Funkcja losująca */
{
for (int i=0; i<rozmiar; i++)
tab[i]=rand()%20;
}

void wypisz (int tab[], int rozmiar) /* Funkcja wypisująca */
{
for (int i=0; i<rozmiar; i++)
cout<<"tab["<<i<<"]="<<tab[i]<<endl;
}

int main() {
int n, tab[100];
srand(time(NULL)); /* Czyszczenie tablicy */
cout<<"Podaj liczbe od 1 do 100"<<endl;
cin>>n;
losuj(tab,n); /* Wykonywanie obu funkcji - losowanie i wypisywanie */
wypisz(tab,n);

cin.ignore();
getchar();
return 0;
}


Komentarz:
Cytat:
W programie zawarte są dwie funkcję: losująca i wypisująca. Warto zwrócić uwagę na miejsca w jakich są umieszczone dwa elementy losujące : tab[i]=rand()%20; - W składni funkcji LOSUJ, a srand(time(NULL)); - W programie głównym.

_____________________________________________________________

TABLICZKA MNOŻENIA - DWUWYMIAROWA

Cytat:
#include<iostream>
#include<cstdio>
#include<cstdlib>
#include<iomanip>

using namespace std;

int main()
{
int tab[11][11];

for (int i=1; i<11; i++)
{
for (int j=1; j<11; j++)
{
tab[i][j]=i*j;
cout<<setw( 8 )<<tab[i][j]; /*Odstepy miedzy komorkami*/
}
}
getchar();
return 0;
}

Powered by phpBB © 2001,2002 phpBB Group