ďťż

Blog literacki, portal erotyczny - seks i humor nie z tej ziemi


LEKCJA 6 - NASTĘPNY PROGRAM - KOMPUTEROWA ARYTMETYKA.
________________________________________________________________
W trakcie tej lekcji napiszesz i uruchomisz następny program
wykonujący proste operacje matematyczne.
________________________________________________________________

Aby przystąpić po wyjaśnieniach do pracy nad drugim programem,
powinieneś wykonać następujące czynności:

1. Zrób porządek na ekranie. Zamknij rozkazem Close z menu
Window zbędne okna (możesz posłużyć się kombinacją [Alt]-[F3]).
2. Rozwiń menu File.
3. Wybierz z menu rozkaz Open...
4. Wpisz do okienka tekstowego:
A:\DRUGI.CPP
5. Naciśnij [Enter].
6. Wpisz do okienka edytora tekst programu:

[P003.CPP ]
/* Program przykladowy: _DRUGI.CPP */


# include /* zwróć uwagę, że tu NIE MA [;] ! */
# include /* drugi plik nagłówkowy */

int main() /* tu tez nie ma średnika [;] ! */
{
float x, y;
float wynik;

clrscr();
printf("Zamieniam ulamki zwykle na dziesietne\n");
printf("\nPodaj licznik ulamka: ");
scanf("%f", &x); /* pobiera liczbę z klawiatury */
printf("\nPodaj mianownik ulamka: ");
scanf( "%f", &y);

wynik = x / y; /* tu wykonuje sie dzielenie */

printf("\n %f : %f = %f", x, y, wynik);
printf("\n nacisnij dowolny klawisz...\n");

getch(); /* program czeka na nacisniecie klawisza. */

return 0; //<-- zwrot zera do systemu
}


UWAGA:
_________________________________________________________________
* Komentarze ujęte w [/*.....*/] możesz pominąć. Komentarz jest
przeznaczony dla człowieka. Kompilator ignoruje całkowicie
komentarze i traktuje komentarz jak puste miejsce, a dokładniej
- tak samo jak pojedynczą spację. Komentarz w C++ może mieć dwie
formy:

/* Tekst komentarza */
// Tekst komentarza

w drugim przypadku ogranicznikiem pola komentarza jest koniec
wiersza.

* Spacjami i TABami możesz operować dowolnie. Kompilator
ignoruje także puste miejsca w tekście. Nie należy natomiast
stosować spacji w obrębie słów kluczowych i identyfikatorów.
________________________________________________________________


7. Skompiluj program [Alt]-[C], [M] lub [Enter].

8. Popraw ewentualne błędy.

9. Uruchom program rozkazem Run, naciskając [Alt]-[R], [R].

10. Zapisz wersję źródłową programu DRUGI.CPP na dyskietkę A:\
stosując tym razem SHORTCUT KEY - klawisz [F2].

[S!] scanf() - SCANing Function - Funkcja SKANująca.
________________________________________________________________
Funkcja pobiera ze standardowego urządzenia wejścia- zwykle z
klawiatury podaną przez użytkownika liczbę lub inny ciąg znaków.

Działa podobnie do funkcji INPUT w Basicu, czy readln w Pascalu.

* float - do Floating Point - "Pływający" - zmienny przecinek.
Słowo kluczowe służące do tzw. DEKLARACJI TYPU ZMIENNEJ lub
funkcji. Oznacza liczbę rzeczywistą np.: float x = 3.14;

* int - od Integer - całkowity.
Słowo kluczowe służące do deklaracji typu zmiennej lub funkcji.
Oznacza liczbę całkowitą np.: 768.

* #include - Włącz.
Dyrektywa włączająca cały zewnętrzny plik tekstowy. W tym
przypadku włączone zostały dwa tzw. pliki nagłówkowe:
CONIO.H i STDIO.H.

* CONIO.H - CONsole Input/Output.
Plik nagłówkowy zawierający prototypy funkcji potrzebnych do
obsługi standardowego Wejścia/Wyjścia na/z konsoli (CONsole).
Plik zawiera między innymi prototyp funkcji clrscr(), potrzebnej
nam do czyszczenia ekranu.

*STDIO.H - STanDard Input/Output
Plik nagłówkowy zawierający prototypy funkcji potrzebnych do
obsługi standardowego Wejścia/Wyjścia na/z konsoli (Input -
Wejście, Output - Wyjście). Plik zawiera między innymi prototyp
funkcji printf(), potrzebnej nam do drukowania wyników na
ekranie.

return - słowo kluczowe: Powrót, zwrot.

Po wykonaniu programu liczba 0 (tak kazaliśmy programowi
rozkazem return 0;) jest zwracana do systemu operacyjnego, w
naszym przypadku do DOSa. Zwróć uwagę, że nie pojawiło się tym
razem ostrzeżenie WARNING podczas kompilacji.
________________________________________________________________


OPERATORY ARYTMETYCZNE C++.

C++ potrafi oczywiście nie tylko dzielić i mnożyć. Oto tabela
operatorów arytmetycznych c i C++.

OPERATORY ARYTMETYCZNE języka C++.
________________________________________________________________

Operator Nazwa Tłumaczenie Działanie
________________________________________________________________

+ ADDition Dodawanie Suma liczb
- SUBstraction Odejmowanie Różnica liczb
* MULtiplication Mnożenie Iloczyn liczb
/ DIVision Dzielenie Iloraz liczb
% MODulus Dziel Modulo Reszta z dzielenia
________________________________________________________________


Przykładowe wyniki niektórych operacji arytmetycznych.
________________________________________________________________

Działanie (zapis w C++) Wynik działania
________________________________________________________________

5 + 7 12
12 - 7 5
3 * 8 24
10 / 3 3.333333
10 % 3 1
________________________________________________________________



[???] Czym różni się dzielenie / od % ?
________________________________________________________________
Operator dzielenia modulo % zamiast wyniku dzielenia - daje
rzesztę z dzielenia. Dla przykładu, dzielenie liczby 14 przez
liczbę 4 daje wynik 3, reszta z dzielenia 2. Wynik operacji

14%4

będzie więc wynosić 2. Operator ten jest niezwykle przydatny np.
przy sprawdzaniu podzielności, skalowaniu, określaniu zakresów
liczb przypadkowych, itp..

Przykłady generacji liczb pseudolosowych wybiegają nieco w przyszłość,
ale postanowiłem w Samouczku umieścić je razem. Po przestudiowaniu
tworzenia pętli programowych możesz wrócić do tej lekcji i rozważyć
przykłady po raz wtóry.

Przykład 1:

randomize();
int X=ramdom();
X = X % 10;

Przykład 2:
---------------------
#include /* Zwróc uwagę na dołączony plik */
#include

main()
{
int i;

printf("Dziesięć liczb pseudo-losowych od 0 do 99\n\n");
for(i=0; i<10; i++)
printf("%d\n", rand() % 100);
return 0;
}

Przykad3
--------------------
#include
#include
#include

void main()
{
randomize();
printf("Liczby pseudolosowe z zakresu: 0-99 --> %d\n", random (100));
}

Przykład 4
-----------------
#include
#include
#include

int main(void)
{
int i;

randomize();
printf("Liczby pseudolosowe: 0 to 99\n\n");
for(i=0; i<10; i++)
printf("%d\n", rand() % 100);
return 0;
}

Zwróć uwagę, że to randomize() uruchamia generator liczb pseudolosowych,
czyli jakgdyby "włącza bęben maszyny losującej".
________________________________________________________________


Wykonaj z programem DRUGI.CPP kilka eksperymentów.

[Z]
________________________________________________________________
1. Zamień operator dzielenia na operator mnożenia [*]:

wynik = x * y; /* tu wykonuje sie mnożenie */

i napis w pierwszej funkcji printf() na np. taki:

printf( "Wykonuje mnozenie liczb" );

Uruchom program. Sprawdź poprawność działania programu w
szerokim zakresie liczb. Przy jakiej wielkości liczb pojawiają
się błędy?

2. Zmień nazwy zmiennych x, y, wynik na inne, np.:
to_jest_liczba_pierwsza,
to_jest_liczba_druga,
itp.
Czy C++ poprawnie rozpoznaje i rozróżnia takie długie nazwy?
Kiedy zaczynają się kłopoty? Sprawdź, czy można w nazwie
zmiennej użyć spacji? Jaki komunikat wyświetli kompilator?
________________________________________________________________

[???] PRZEPADŁ PROGRAM ???
________________________________________________________________
Nie przejmuj się. Wersja początkowa programu DRUGI.CPP jest na
dyskietce dołączonej do niniejszej książki (tam nazywa się
DRUGI.CPP).
Zwróć uwagę, że kompilator C++ tworzy automatycznie kopie
zapasowe plików źródłowych z programami i nadaje im standardowe
rozszerzenie *.BAK. Zanim zatem zaczniesz się denerwować,
sprawdź, czy kopia np. DRUGI.BAK nie jest właśnie tą wersją
programu, która Ci "przepadła".
________________________________________________________________

__________________________________________________________________
EOF
  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • qualintaka.pev.pl
  •