Konstruowanie funkcji w języku C++
Programowanie własnych funkcji w języku C++
Cele ćwiczenia:
Umiejętność budowania algorytmów i ich postaci graficznej.
Zapoznanie z konstrukcją funkcji.
Budowanie własnych funkcji z przekazywaniem parametrów przez wartość.
Nowe zagadnienia:
prototyp funkcji, definicja funkcji, wywoływanie funkcji,
argumenty formalne i aktualne funkcji,
przekazywanie parametrów przez wartość
typ danych void
Definicje nowych pojęć do przyswojenia:
Prototyp funkcji - to zapowiedź (deklaracja) funkcji w programie, występuje zawsze przed funkcją główną main() i składa się z następujących elementów:
Składnia prototypu funkcji:
float Suma (int x, float y, float z);
typ danych wyjściowych,
nazwa funkcji,
dane wejściowe w nawiasie (argumenty formalne)
średnik
Definicja funkcji - to normalny program zawierający własne zmienne, instrukcje, operacje ujęte w parę nawiasów klamrowych realizujący określone zadanie. Format kodu definicji funkcji jest podobny do formatu funkcji głównej main().
Składnia definicji funkcji:
float Suma (int x, float y, float z)
{
float wynik;
wynik=x+y+z;
return wynik;
}
powtórzenie prototypu bez średnika
normalny kod C++ realizujący określone zadanie
Wywołanie funkcji - jest to użycie funkcji do wykonania określonego zadania w programie.
Składnia wywołania funkcji:
razem=Suma (a,b,c);
wywołanie poprzez nazwę
przekazanie funkcji argumentów aktualnych
argumenty formalne - to argumenty zdefiniowane w prototypie funkcji,
argumenty aktualne - to argumenty użyte w wywołaniu funkcji,
typ void - to typ danych nie posiadający żadnych wartości i używany jest tam gdzie nie jest pobierana ani zwracana żadna wartość.
Przekazywanie przez wartość - polega na kopiowaniu wartości argumentów aktualnych do pamięci przydzielonej argumentom formalnym funkcji.
Modułowy układ programu źródłowego w C++
Zadanie 1
Napisz program, który pobiera z klawiatury dwie liczby, wykonuje ich mnożenie a następnie drukuje wynik (wykorzystaj odpowiednio skonstruowane funkcje do mnożenia i drukowania)
Program źródłowy
#include <iostream.h>
#include <conio.h>
#include<iomanip.h>
float iloczyn (float x, float y);
void drukuj (float wynik);
main()
{
float a,b,c;
cout<<"podaj liczby a, b"<<endl;
cin>>a>>b;
c=iloczyn(a,b);
drukuj(c);
getch();
return 0;
}
float iloczyn (float x, float y)
{
float wynik;
wynik=x*y;
return wynik;
}
void drukuj (float wynik)
{
cout<<endl<<"Wynik dzialania wynosi ";
cout<<setw(10)<<setprecision(4)<<wynik<<endl;
}
Zadania C++ - 6.1 funkcje
Napisz program, który pobiera z klawiatury dwie liczby, wykonuje ich dzielenie ze sprawdzeniem warunku a następnie drukuje wynik (wykorzystaj odpowiednio skonstruowane funkcje do dzielenia i drukowania).
Napisz program, który pobiera z klawiatury wiek obywatela, i w zależności od wieku tego obywatela określa czy może on kandydować na posła, prezydenta Polski. (wykorzystaj odpowiednio skonstruowaną funkcję np. polityk do ustalenia praw wyborczych obywatela w tym zakresie i ich wydrukowania).
Napisz program, który przypisze każdemu elementowi dowolnej tablicy dwuwymiarowej określoną wartość (np.2). Skonstruuj jedną funkcję do przypisywania i wydrukowania tablicy.
Napisz program, który pobiera z klawiatury dwie liczby, wykonuje wybrane działanie matematyczne (dodawanie, odejmowanie, mnożenie, dzielenie) a następnie drukuje wynik wybranego działania (wykorzystaj odpowiednio skonstruowaną funkcję „kalkulator” oraz funkcję „drukowania”).
Napisz program do obliczania objętości brył obrotowych (kula, walec, stożek, torus). Opracuj osobne funkcje do obliczania objętości i wydruku wyniku.
Napisz program, który oblicza i drukuje sumę n wyrazów ciągu:
Skonstruuj i wykorzystaj funkcję do obliczania silni.
Zakład produkuje różny asortyment wyrobów. Opracuj algorytm i napisz program do uproszczonej analizy jakości i kosztów produkcji wybranego wyrobu. Skonstruuj odpowiednie funkcje do obliczania % i kosztów. Dane udostępnione do analizy to:
wielkość produkcji w szt., ilość wybraków w szt., koszt produkcji 1 szt. w zł
(wyeliminuj wprowadzanie błędnych danych)
Dyrektor ma otrzymywać wydruk analizy w następującej postaci:
Ilość wyrobów przeznaczonych do sprzedaży w szt.,
Ilość wadliwych wyrobów w %,
Całkowity koszt produkcji w zł,
Koszt powstania wybraków w zł,
Rzeczywisty koszt produkcji 1 dobrego wyrobu w zł,
Wzrost kosztu produkcji 1 dobrego wyrobu w %,
Straty poniesione z powodu wybraków w zł.
Napisz program do przeliczania złotówek na inne waluty (np. euro, funty, dolary). Skonstruuj odpowiednią funkcję do przeliczania walut. Wydruk powinien zawierać informację dla klienta ile otrzyma poszczególnych walut za x złotówek.
Napisz program do obliczania niezbędnej siły Fmin w śrubie łączącej dwie płyty stalowe rozciągane siłą P. Śruba nie powinna pracować na ścinanie. Skonstruuj odpowiednią funkcję do obliczania Fmin i drukowania wyniku.
Ćwiczenia laboratoryjne nr 6.1
„Język Programowania” str. 3
Ćwiczenia laboratoryjne nr 6.1
„Język Programowania” str. 4
ILOCZYN
Prototypy funkcji
iloczyn
drukuj
drukowanie wyniku
DRUKUJ
mnożenie liczb
x, y
STOP
START
Wywołanie funkcji
iloczyn
drukuj
Definicja funkcji
iloczyn
Definicja funkcji
drukuj
void Funkcja_2(int X, int DD)
{
}
void Funkcja_2(int X, int DD);
float Funkcja_1(int x, float y,float z)
{
}
main()
{
suma=Funkcja_1(a,b,c);
Funkcja_2(t,12);
}
float Funkcja_1(int x, float y,float z);
#
Dyrektywy preprocesora
Prototypy funkcji
Funkcja główna
Wywołania funkcji
Definicje funkcji