środa, 20 grudnia 2017

Sortowanie pozycyjne w C++

Sortowanie-porządkowanie informacji według określonego kryterium.


Znalezione obrazy dla zapytania sortowanie pozycyjne

  1. SORTOWANIE POZYCYJNE.
   W algorytmie sortowania słów według porządku                           alfabetycznego metodą pozycyjną porównywane
   są litery umieszczone na tych samych pozycjach, 
   począwszy od ostatniej litery w najdłuższym słowie 
   (słowach).




Przykład:

Posortować algorytmem sortowania pozycyjnego zbiór liczb:
{ 547 398 247 153 121 792 421 }

Liczby posortujemy wg kolejnych od końca cyfr:

start??x?x?x??koniec
547
398
247
153
121
792
421
121
421
792
153
547
247
39
8
121
421
547
247
153
792
398
121
153
247
398
421
547
792
121
153
247
398
421
547
792
Po posortowaniu ostatniej cyfry liczby tworzą ciąg posortowany.

Sortowanie bąbelkowe C++

Sortowanie-porządkowanie informacji według określonego kryterium.

  1. SORTOWANIE BĄBELKOWE.
Polega na porównywaniu parami kolejnych liczb i przestawianiu ich jeśli   występują w niewłaściwej kolejności.Sortowanie bąbelkowe jest bardzo 
łatwe - sprawdzamy czy następny element tablicy jest większy od aktualnego,   jeżeli tak, to zamieniamy te elementy miejscami. Aby skrócić czas wykonywania całego algorytmu kosztem dłuższego czasu przejścia przez jedną   pętlę, można utworzyć flagę przechowującą zmiany. Flaga jest zerowana na wejściu w pętli, w przpadku zmiany jest ona podnoszona. Po wykonaniu pętli sprawdzamy czy zaszła zmiana, jeżeli nie to kończymy sortowanie.


    2. PROGRAM REALIZUJĄCY ALGORYTM SORTOWANIA 
       BĄBELKOWGO.

#include<iostream>

using namespace std;

int main()
{
    cout << "*****Bubble sort*****" << endl;
    int a[50],n,i,j,temp;
    cout<<"Wpisz ilosc liczb ";
    cin>>n;
    cout<<"Wypisz elementy: " << endl;
    for(i=0;i<n;++i)
        cin>>a[i];

    for(i=1;i<n;++i)
    {
        for(j=0;j<(n-i);++j)
            if(a[j]>a[j+1])
            {
                temp=a[j];
                a[j]=a[j+1];
                a[j+1]=temp;
            }
    }

    cout<<"Posortowane liczby:";
    for(i=0;i<n;++i)
        cout<<" "<<a[i];

    return 0;

}

wtorek, 19 grudnia 2017

Sortowanie przez wybór w C++

SORTOWANIE-porządkowanie informacji według określonego kryterium.


  1. SORTOWANIE PRZEZ WYBÓR.   

Polega na wyszukaniu w ciągu liczby największej (lub najmniejszej- w zależności od przyjętego porządku), ustawieniu jej na początku ciągu, a następnie powtarzaniu tych czynności z pominięciem już uporządkowanych elementów.


      2.PROGRAM REALIZUJĄCY ALGORYTM SORTOWANIA                     PRZEZ WYBÓR: 

#include <iostream>
#include <stdio.h>
using namespace std;

int main()
{
    cout << "*****Select sort*****\n" ;
   int array[100], n, c, d, position, swap;

   printf("Wpisz liczbe elementow\n");
   scanf("%d", &n);

   printf("Wypisz te elementy\n", n);

   for ( c = 0 ; c < n ; c++ )
      scanf("%d", &array[c]);

   for ( c = 0 ; c < ( n - 1 ) ; c++ )
   {
      position = c;

      for ( d = c + 1 ; d < n ; d++ )
      {
         if ( array[position] > array[d] )
            position = d;
      }
      if ( position != c )
      {
         swap = array[c];
         array[c] = array[position];
         array[position] = swap;
      }
   }

   printf("Posegregowane liczby:\n");

   for ( c = 0 ; c < n ; c++ )
      printf("%d\n", array[c]);

   return 0;

}

poniedziałek, 30 października 2017

Stosowanie tablic

TABLICA jest złożoną strukturą danych, składająca się z określonej liczby elementów tego samego typu.

Aby utworzyć zmienne indeksowane(aby zapamiętać dane, nadajemy im różne dane,stosujemy wówczas zmienne indeksowane np, a1 , a2.... )w różnych językach programowania , stosuje się tablice.




Znalezione obrazy dla zapytania deklaracja tablicy

piątek, 27 października 2017

Zasady programowania i typy danych

KILKA ZASAD PROGRAMOWANIA W DOBRYM STYLU
Program jest zrozumiały dla komputera, gdy może być przez niego wykonany.Należy więc przestrzegać reguł języka programowania- stosować poprawną składnię instrukcji.
Dobry styl programowania to taki, w którym potrafimy zapisać algorytm w sposób zrozumiała dla komputera i człowieka.

ZASADA 1:
Należy stosować zrozumiałe nazwy zmiennych, bądź zrozumiałe skróty.
ZASADA 2:
Warto zarezerwować pewne nazwy na zmienne używane wielokrotnie np. sterując pętlami - j,i.
ZASADA 3:
Dobrze jest sporządzić listy używanych zmiennych.
ZASADA 4:
Należy dzielić program na podprogramy realizujące mniejsze fragmenty zdania, zwłaszcza w złożonych problemach.
ZASADA 5:
Trzeba dbać o przejrzystość tekstu i zachowywać czytelność jego struktury. Warto też dodawać 
komentarze na początku procedur i funkcji oraz przy niektórych instrukcjach.
ZASADA 6:
Należy pisać programy odporne na błędy użytkowników. Program powinien instruować swojego użytkownika o działaniach jakie musi on podejmować oraz wyświetlać komunikaty dotyczącego oczekiwanego rodzaju danych i nałożonych na nie ograniczeń.

TYPY DANYCH W JĘZYKU C++
-Typy danych w języku C++
Znalezione obrazy dla zapytania typy danych c++

Podział typów w C++:
-typy proste

  • porządkowe (m. in. całkowity, logiczny, znakowy, wyliczeniowy)
  • rzeczywiste
-typy pochodne
  • tablice
  • struktury
  • unie
-typy wskaźnikowe
-typy obiektowe



-Podzbiory typu całkowitego i rzeczywistego w języku C++ i Pascal.






poniedziałek, 23 października 2017

Sposoby przekazywania parametrów

1.PRZEKAZYWANIE PARAMETRÓW PRZEZ WARTOŚĆ
      W treści danej procedury lub funkcji są traktowane jak zmienne lokalne. Ewentualne operacje wykonywane na tych parametrach wewnątrz procedury lub funkcji nie powodują zmian wartości odpowiadających im parametrów aktualnych.


2. PRZEKAZYWANIE PARAMETRÓW PRZEZ       ZMIENNĄ (PRZEZ REFERENCJĘ)
      W procedurze lub funkcji, w której parametry przekazywane są przez zmienną, operacje wykonywane w treści procedury na parametrach formalnych w momencie wywołania danej procedury powodują wykonanie tych operacji na odpowiednich parametrach aktualnych.

Zmienna lokalna i globalna

Zasięg zmiennej- określa zakres widoczności nazwy zmiennej w obrębie pliku.
  • lokalne
  • globalne


Zmienna lokalna – zmienna zdefiniowana i dostępna wyłącznie w określonym bloku programu, tworzona w momencie wejścia do tego bloku oraz usuwana z pamięci w momencie wyjścia z danego bloku. Tym samym zasięg zmiennej lokalnej oraz czas jej życia pokrywaną się i obejmują blok, w którym zmienna lokalna jest zdefiniowana.

Zmienna globalna – zmienna istniejąca przez cały czas życia programu i widziana z wielu miejsc w programie.


Funkcje zwracające w języku C++

Funkcja zwracająca wartość- wylicza wartość i odsyła tę wartość do funkcji wywołującej. Mówimy, że funkcja zwraca wartość (void).
Funkcje zwracające wartość muszą zawierać instrukcję return z wartością, która ma być zwrócona do funkcji wywołującej . Przykład:
                       return a*b;
                       return Wynik;
Można również wywołać ją poprzez nazwę, np. SumaKwadrat ();

Parametr- wartość przekazywana funkcji.
Wartość zwracana- wartość przekazywana z funkcji.

wtorek, 10 października 2017

Stosowanie procedur i funkcji w językach programowania

1.MODELE PROGRAMOWANIA.

*PROGRAMOWANIE LINIOWE- program jest ciągiem instrukcji języka programowania.Nie wyróżnia się bloków strukturalnych (zawierające instrukcje warunkowe lub iteracyjne).Są one realizowane za pomocą instrukcji skoku (przejście do określonego miejsca w programie).Nie ma wyodrębnionych procedur i funkcji.

*PROGRAMOWANIE STRUKTURALNE- program ma określoną strukturę, w której można wyodrębnić deklaracje(modułów,zmiennych i stałych), definicje programów oraz bloki instrukcji. Nie jest konieczna instrukcja skoku.Każda zmienna ma ściśle określony typ

*PROGRAMOWANIE MODULARNE- koncepcja programowania modularnego stanowi rozszerzenia podejścia proceduralnego, w którym powtarzające się ciągi instrukcji zapisuje się w postaci procedur i funkcji, nadających się do wielokrotnego wykorzystania.Moduł jest strukturą  nadrzędną w stosunku do procedur i funkcji.

*PROGRAMOWANIE OBIEKTOWE- program to zbiór obiektów, z których każdy posiada określone właściwości i metody.Metody opisane są za pomocą programowania strukturalnego.Programowanie obiektowe służy do realizacji złożonych projektów.

*PROGRAMOWANIE ZDARZENIOWE- program to zbiór obiektów, jednak kolejność wykonywania instrukcji programu nie jest zdefiniowana przez programistę, lecz zależy od zaistnienia określonych   zdarzeń ( np. naciśnięcie myszy przez użytkownika, wprowadzenia danej i upływu odpowiedniego czasu).Programowanie zdarzeniowe jest ściśle powiązane z tworzeniem interfejsu między programem a i użytkownikiem.

2.PROGRAMOWANIE ZSTĘPUJĄCE I WSTĘPUJĄCE.   


  •    PROGRAMOWANIE ZSTĘPUJĄCE- czyli "z góry do dołu"- najpierw planuje się całość, a potem dochodzi do szczegółów.Zaczynamy od sformułowania zadania głównego, potem poddajemy je analizie i dzielimy na mniejsze moduły, czasem aż do najbardziej elementarnych części. 
  • PROGRAMOWANIE WSTĘPUJĄCE- czyli "z dołu do góry"-ze szczegółowych elementów składa się całość. Na początku określamy zestaw elementarnych zadań, których wykonanie jest konieczne do realizacji zadania głównego.

3.ZALETY STOSOWANIA PODPROGRAMÓW (PROCEDUR I FUNKCJI).
  1. Dzielenie zadanie na mniejsze części (każda może być realizowana w oddzielnej procedurze lub funkcji)
  2. Wprowadzenie porządku do programu.
  3. Unikanie powtórzeń
  4. Łatwiejsze wyszukiwanie błędów i dokonywanie poprawek
  5. Programowanie zespołowe.
Zalety programowania  strukturalnego są szczególnie widoczne przy pisaniu dużych programów, rozwiązując złożone problemy.

piątek, 6 października 2017

Algorytm z pętlą zagnieżdżoną

1.SPECYFIKACJA

Zagnieżdżenie pętli, podobnie jak instrukcji warunkowej, polega na wywołaniu jednej pętli wewnątrz drugiej. Oznacza to, że na jedną iterację pętli zewnętrznej, zostanie wykonany cały przebieg pętli wewnętrznej. Instrukcje iteracyjne w C++ można dowolnie zagnieżdżać. Im więcej zagnieżdżeń tym większa złożoność obliczeniowa algorytmu.


ZADANIE: Napisz listę kroków algorytmu, który umożliwi wyprowadzenie na ekran komputera prostokąta o bokach n,m narysowanego za pomocą znaków *
(m-liczba znaków * w poziomie, n-liczba znaków * w pionie).
Wnętrze prostokąta powinno być wypełnione znakiami *.
DANE: liczby naturalne dodatnie, określające ilość znaków * w prostokącie o bokach n,m.
WYNIK: prostokąt o wymiarach m*n , zbudowany ze znaków *.
LISTA KROKÓW:
1.Zacznij algorytm.
2.Zmiennej i przypisz wartość jeden: i=1
3.Jeśli i jest większe od n, przejdź do kroku 4;
        w przeciwnym przypadku
        3.1. Zmiennej j przypisz wartość jeden
        3.2. Jeśli j jest większe od m,
              przejdź do nowego wiersza;
              zwiększ licznik i o jeden
              wróć do kroku 3;
        w przeciwnym wypadku
              wyprowadź ("*")
              zwiększ licznik j o jeden
              wróć do kroku 3.2.;
4. Zakończ algorytm.

2.SCHEMAT BLOKOWY.



3.LISTING PROGRAMU W C++.


#include <iostream>
using namespace std;
int main()
{
int n,m,j,i;
cout << "Program rysujacy prostokat z gwiazdek\n";
cout <<"Wprowadz dlugosc: ";
cin >> n;
cout <<"Wprowadz szerokosc ";
cin >> m;
for (i=0;i<n;i++)
{
for(j=0; j<m; j++)
cout << "*";
cout << endl;
}
return 0;

}

Algorytm iteracyjny iloczyn n liczb

1.SPECYFIKACJA 
Instrukcją interacji (pętli) nazywamy instrukcje powtarzania danego ciągu operacji.Lista powtórzeń może być ustalona przed wykonaniem instrukcji lub może zależeć od spełnienia pewnego warunku.

SPECYFIKACJA PROBLEMU:
ZADANIE: Oblicz iloczyn n liczb całkowitych.
DANE: n dowolnych liczb całkowitych, kolejno zapamiętywanych w zmiennej a.
WYNIK: wartość iloczynu: iloczyn.
LISTA KROKÓW:
1.Zacznij algorytm.
2.Zmiennej iloczyn oraz zmiennej i przypisz wartość jeden iloczyn:=1; i:=1.
3.Wprowadź liczbę całkowitą i zapamiętaj ją w zmiennej a.
4.Pomnóż iloczyn przez wprowadzoną liczbę a: iloczyn:=iloczyn*a.
5.Jeśli i nie równa się n, zwiększ licznik o jeden (i:=i+1) i wróć do kroku 3.
6.Wyprowadź wynik: iloczyn.
7. Zakończ algorytm. 

2.SCHEMAT BLOKOWY

3.LISTING PROGRAMU

#include <iostream>
using namespace std;
int main ()
{
    int i,a,iloczyn,n;
    cout << "Podaj ilosc liczb do przemnozenia: ";
    cin >> n;
    iloczyn=1;
    for (i=0; i<n; i++)
    {
        cout << "Wpisz liczbe nr " <<i+1<< ":"  ;
        cin >>a;
        iloczyn*=a;
    }
    cout << "Iloczyn podanych liczb: "<<iloczyn;
    return 0;
}



poniedziałek, 22 maja 2017

Edytor stron WIX

WIX(http://pl.wix.com) to jeden z najpopularniejszych, a zarazem oferujących największe możliwości, darmowych generatorów stron internetowych. Jest ponadto dostępny w języku polskim. Oferuje kilkaset gotowych szablonów w ponad 70 kategoriach - zarówno dla witryn jedno, jak i wielostronicowych. Umożliwia konstrukcję witryny na zasadzie drag and drop (przeciągnij i upuść), co sprawia, że jej tworzenie jest jeszcze łatwiejsze i bardziej intuicyjne. WIX integruje się z portalami społecznościowymi, udostępnia wersję mobilną budowanej strony, pozwala na stworzenie sklepu internetowego.
Znalezione obrazy dla zapytania edytor stron wix       Znalezione obrazy dla zapytania edytor stron wix