Spis treści JĘZYK C - FUNKCJE. Metodyki i techniki programowania. Instrukcja do pracowni specjalistycznej z przedmiotu. Numer ćwiczenia MITP10

Podobne dokumenty
Spis treści JĘZYK C - PRZEKAZYWANIE PARAMETRÓW DO FUNKCJI, REKURENCJA. Informatyka 1. Instrukcja do pracowni specjalistycznej z przedmiotu

Spis treści JĘZYK C - ZAGNIEŻDŻANIE IF-ELSE, OPERATOR WARUNKOWY. Informatyka 1. Instrukcja do pracowni specjalistycznej z przedmiotu

Spis treści JĘZYK C - ZAGNIEŻDŻANIE IF-ELSE, OPERATOR WARUNKOWY. Metodyki i techniki programowania

Spis treści JĘZYK C - ZAGNIEŻDŻANIE IF-ELSE, OPERATOR WARUNKOWY. Informatyka 1. Instrukcja do pracowni specjalistycznej z przedmiotu

Spis treści JĘZYK C - OPERATORY BITOWE. Informatyka 2. Instrukcja do pracowni specjalistycznej z przedmiotu. Numer ćwiczenia INF32

Spis treści JĘZYK C - INSTRUKCJA WARUNKOWA IF, OPERATORY RELACYJNE I LOGICZNE, WYRAŻENIA LOGICZNE. Informatyka 1

BHP JĘZYK C - INSTRUKCJE ITERACYJNE

Spis treści JĘZYK C - INSTRUKCJA SWITCH, OPERATORY BITOWE. Informatyka 1. Instrukcja do pracowni specjalistycznej z przedmiotu. Numer ćwiczenia INF05

Spis treści JĘZYK C - INSTRUKCJA WARUNKOWA IF, OPERATORY RELACYJNE I LOGICZNE, WYRAŻENIA LOGICZNE. Metodyki i techniki programowania

Spis treści JĘZYK C - OPERATORY RELACYJNE I LOGICZNE, WYRAŻENIA LOGICZNE, INSTRUKCJA WARUNKOWA IF. Informatyka 1

Spis treści JĘZYK C - ŚLEDZENIE WYKONANIA PROGRAMU, DEBUGGER. Informatyka 1. Instrukcja do pracowni specjalistycznej z przedmiotu

Spis treści JĘZYK C - PRZEKAZYWANIE PARAMETRÓW DO FUNKCJI, REKURENCJA. Informatyka 1. Instrukcja do pracowni specjalistycznej z przedmiotu

Spis treści PLIKI BINARNE W JĘZYKU C. Informatyka 2. Instrukcja do pracowni specjalistycznej z przedmiotu. Numer ćwiczenia INF23

Spis treści PLIKI BINARNE W JĘZYKU C. Informatyka 2. Instrukcja do pracowni specjalistycznej z przedmiotu. Numer ćwiczenia INF23

Spis treści JĘZYK C - TABLICE DWUWYMIAROWE, OPERACJE NA TABLICACH. Metodyki i techniki programowania

Spis treści PROGRAMOWANIE OBIEKTOWE W JĘZYKU C++: FUNKCJE ZAPRZYJAŹNIONE Z KLASĄ, PRZEŁADOWANIE OPERATORÓW. Informatyka 2

Spis treści JĘZYK C - TABLICE DWUWYMIAROWE, OPERACJE NA TABLICACH. Informatyka 1. Instrukcja do pracowni specjalistycznej z przedmiotu

Spis treści JĘZYK C - TABLICE JEDNOWYMIAROWE. Informatyka 1. Instrukcja do pracowni specjalistycznej z przedmiotu. Numer ćwiczenia INF05Z

Spis treści JĘZYK C - INSTRUKCJA WARUNKOWA IF, OPERATORY RELACYJNE I LOGICZNE, WYRAŻENIA LOGICZNE, ZAGNIEŻDŻANIE IF-ELSE.

Spis treści JĘZYK C - TABLICE DWU- I WIELOWYMIAROWE, OPERACJE NA TABLICACH. Informatyka 2. Instrukcja do pracowni specjalistycznej z przedmiotu

Spis treści JĘZYK C - PLIKI BINARNE. Informatyka 2. Instrukcja do pracowni specjalistycznej z przedmiotu. Numer ćwiczenia INF30

13 JĘZYK C - OPERATOR WARUNKOWY,

Spis treści WSKAŹNIKI. DYNAMICZNY PRZYDZIAŁ PAMIĘCI W JĘZYKU C. Informatyka 2. Instrukcja do pracowni specjalistycznej z przedmiotu

Spis treści JĘZYK C - INSTRUKCJA SWITCH, OPERATORY BITOWE. Metodyki i techniki programowania. Instrukcja do pracowni specjalistycznej z przedmiotu

Spis treści JĘZYK C - INSTRUKCJE ITERACYJNE FOR, WHILE I DO WHILE, ZAGNIEŻDŻANIE PĘTLI FOR, INSTRUKCJE CONTINUE, BREAK, I GOTO.

Spis treści TRYB GRAFICZNY SYSTEMU WINDOWS - PODSTAWY OBSŁUGI WYBRANEGO ŚRODOWISKA PROGRAMISTYCZNEGO. Informatyka 2

znajdowały się różne instrukcje) to tak naprawdę definicja funkcji main.

BADANIE ROZKŁADU TEMPERATURY W PIECU PLANITERM

Spis treści JĘZYK C - STRUKTURY, POLA BITOWE, UNIE. Metodyki i techniki programowania. Instrukcja do pracowni specjalistycznej z przedmiotu

Spis treści JĘZYK C - WSKAŹNIKI, DYNAMICZNY PRZYDZIAŁ PAMIĘCI. Informatyka 2. Instrukcja do pracowni specjalistycznej z przedmiotu

Politechnika Białostocka

Programowanie - wykład 4

Spis treści WSKAŹNIKI. DYNAMICZNY PRZYDZIAŁ PAMIĘCI W JĘZYKU C. Informatyka 2. Instrukcja do pracowni specjalistycznej z przedmiotu

Wstęp do programowania INP001213Wcl rok akademicki 2017/18 semestr zimowy. Wykład 6. Karol Tarnowski A-1 p.

Spis treści JĘZYK C - STRUKTURY, POLA BITOWE, UNIE. Informatyka 2. Instrukcja do pracowni specjalistycznej z przedmiotu. Numer ćwiczenia INF23

dr inż. Jarosław Forenc

POMIARY PARAMETRÓW PRZEPŁYWU POWIETRZA

Spis treści TRYB GRAFICZNY SYSTEMU WINDOWS - PODSTAWY OBSŁUGI WYBRANEGO ŚRODOWISKA PROGRAMISTYCZNEGO, TWORZENIE INTERFEJSU UŻYTKOWNIKA.

Część XVII C++ Funkcje. Funkcja bezargumentowa Najprostszym przypadkiem funkcji jest jej wersja bezargumentowa. Spójrzmy na przykład.

POLITECHNIKA BIAŁOSTOCKA

Wstęp do programowania

Język C część 1. Sformułuj problem Zanalizuj go znajdź metodę rozwiązania (pomocny może byd algorytm) Napisz program Uruchom i przetestuj czy działa

Języki C i C++ Wykład: 2. Wstęp Instrukcje sterujące. dr Artur Bartoszewski - Języki C i C++, sem. 1I- WYKŁAD

Podstawy programowania. Wykład Funkcje. Krzysztof Banaś Podstawy programowania 1

POLITECHNIKA BIAŁOSTOCKA

Podstawy programowania. Wykład: 7. Funkcje Przekazywanie argumentów do funkcji. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD

METROLOGIA EZ1C

Podstawy programowania. Wykład: 5. Instrukcje sterujące c.d. Stałe, Typy zmiennych c.d. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD

Spis treści PROGRAMOWANIE OBIEKTOWE W JĘZYKU C++: KLASY I OBIEKTY, DANE I FUNKCJE SKŁADOWE, PRAWA DOSTĘPU, KONSTRUKTORY I DESTRUKTORY.

Spis treści JĘZYK C - ŁAŃCUCHY ZNAKÓW. Informatyka 1. Instrukcja do pracowni specjalistycznej z przedmiotu. Numer ćwiczenia INF10Z

Podstawy Programowania

Prof. Danuta Makowiec Instytut Fizyki Teoretycznej i Astrofizyki pok. 353, tel danuta.makowiec at gmail.com

Argumenty wywołania programu, operacje na plikach

Język C, tablice i funkcje (laboratorium)

Programowanie strukturalne i obiektowe. Funkcje

Wykład I. Programowanie. dr inż. Janusz Słupik. Gliwice, Wydział Matematyki Stosowanej Politechniki Śląskiej. c Copyright 2014 Janusz Słupik

Język C, tablice i funkcje (laboratorium, EE1-DI)

Funkcje. Spotkanie 5. Tworzenie i używanie funkcji. Przekazywanie argumentów do funkcji. Domyślne wartości argumentów

METODY I JĘZYKI PROGRAMOWANIA PROGRAMOWANIE STRUKTURALNE. Wykład 02

Wstęp do Programowania, laboratorium 02

ELEMENTY RLC W OBWODACH PRĄDU SINUSOIDALNIE ZMIENNEGO

dr inż. Jarosław Forenc

Zmienne, stałe i operatory

PODSTAWY INFORMATYKI 1 PRACOWNIA NR 6

WYKŁAD 1 - KONSPEKT. Program wykładu:

if (warunek) instrukcja1; if (warunek) instrukcja1; else instrukcja2; a > b - a większe od b if (warunek) instrukcja1; a <= b - a mniejsze lub równe b

Spis treści. Informatyka 1. Instrukcja do pracowni specjalistycznej z przedmiotu. Numer ćwiczenia INF03Z. Autor: dr inż.

Wstęp do informatyki- wykład 11 Funkcje

5 Przygotował: mgr inż. Maciej Lasota

Wstęp do informatyki- wykład 9 Funkcje

Spis treści JĘZYK C - ŁAŃCUCHY ZNAKÓW. Informatyka 2. Instrukcja do pracowni specjalistycznej z przedmiotu. Numer ćwiczenia INF22

I. KARTA PRZEDMIOTU CEL PRZEDMIOTU WYMAGANIA WSTĘPNE W ZAKRESIE WIEDZY, UMIEJĘTNOŚCI I INNYCH KOMPETENCJI EFEKTY KSZTAŁCENIA

Jak napisać program obliczający pola powierzchni różnych figur płaskich?

4. Funkcje. Przykłady

1 Podstawy c++ w pigułce.

JĘZYKI PROGRAMOWANIA Z PROGRAMOWANIEM OBIEKTOWYM. Laboratorium 1. Wprowadzenie, środowisko programistyczne, pierwsze programy

Język C zajęcia nr 11. Funkcje

Wykład 5: Klasy cz. 3

Spis treści OBSŁUGA PLIKÓW W JĘZYKU C++ Informatyka 2. Instrukcja do pracowni specjalistycznej z przedmiotu. Numer ćwiczenia INF32

dr inż. Jarosław Forenc

Tablice i struktury. czyli złożone typy danych. Programowanie Proceduralne 1

Programowanie komputerowe. Zajęcia 2

Rok akademicki: 2013/2014 Kod: JFT s Punkty ECTS: 5. Poziom studiów: Studia I stopnia Forma i tryb studiów: Stacjonarne

Wstęp do programowania INP003203L rok akademicki 2016/17 semestr zimowy. Laboratorium 1. Karol Tarnowski A-1 p.

#include <iostream> using namespace std; void ela(int); int main( ); { Funkcja 3. return 0; }

while (test) instrukcja; int i=0; while (i<10) i++; dopóki test prawdziwy wykonuj instrukcję Wykonano: 35% / \ fałsz test prawda instrukcja

Spis treści OPERACJE WEJŚCIA-WYJŚCIA W JĘZYKU C++. STEROWANIE FORMATEM, MANIPULATORY. Informatyka 2

Wstęp do programowania

2 Przygotował: mgr inż. Maciej Lasota

ISO/ANSI C - funkcje. Funkcje. ISO/ANSI C - funkcje. ISO/ANSI C - funkcje. ISO/ANSI C - funkcje. ISO/ANSI C - funkcje

Informatyka I. Klasy i obiekty. Podstawy programowania obiektowego. dr inż. Andrzej Czerepicki. Politechnika Warszawska Wydział Transportu 2018

W języku C dostępne są trzy instrukcje, umożliwiające tworzenie pętli: for, while oraz do. for (w1;w2;w3) instrukcja

Funkcje. Deklaracja funkcji. Definicja funkcji. Wykorzystanie funkcji w programie.

1 Podstawy c++ w pigułce.

Podstawy algorytmiki i programowania - wykład 4 C-struktury

Tablice wielowymiarowe. Przykład tablica 2-wymiarowa. Przykład. Przykład 3-wymiarowy. Tak naprawdę nie istnieją w C! Rozważmy tablicę o rozmiarze 3x2

Podstawy algorytmiki i programowania - wykład 5 C-struktury cd.

int tab[5]; tab[1]; ciągły obszar pamięci, w którym umieszczone są elementy tego samego typu macierz [ ] - dwuargumentowy operator indeksowania

Wykład VII. Programowanie. dr inż. Janusz Słupik. Gliwice, Wydział Matematyki Stosowanej Politechniki Śląskiej. c Copyright 2014 Janusz Słupik

Po uruchomieniu programu nasza litera zostanie wyświetlona na ekranie

Transkrypt:

Politechnika Białostocka Wydział Elektryczny Katedra Elektrotechniki Teoretycznej i Metrologii Instrukcja do pracowni specjalistycznej z przedmiotu Metodyki i techniki programowania Kod przedmiotu: TSC200 009 (studia stacjonarne) Spis treści. Opis stanowiska... 3.. Stosowana aparatura... 3.2. Oprogramowanie... 3 2. Wiadomości teoretyczne... 3 2.. Struktura programu w języku C... 3 2.2. Ogólna struktura funkcji w języku C... 4 2.3. Umieszczanie definicji funkcji w programie... 6 2.4. Klasyfikacja funkcji... 8 2.5. Zmienne lokalne i zmienne globalne... 3 3. Przebieg ćwiczenia... 4 JĘZYK C - FUNKCJE 4. Literatura... 7 5. Zagadnienia na zaliczenie... 7 6. Wymagania BHP... 7 Numer ćwiczenia MITP0 Autor: dr inż. Jarosław Forenc Białystok 203 Materiały dydaktyczne przeznaczone dla studentów Wydziału Elektrycznego PB. Wydział Elektryczny, Politechnika Białostocka, 203 (wersja.4) Wszelkie prawa zastrzeżone. Żadna część tej publikacji nie może być kopiowana i odtwarzana w jakiejkolwiek formie i przy użyciu jakichkolwiek środków bez zgody posiadacza praw autorskich. Metodyki i techniki programowania 2 z 8 Instrukcja MITP0

. Opis stanowiska.. Stosowana aparatura Podczas zajęć wykorzystywany jest komputer klasy PC z systemem operacyjnym Microsoft Windows (XP/Vista/7)..2. Oprogramowanie Na komputerach zainstalowane jest środowisko programistyczne Microsoft Visual Studio 2008 Standard Edition lub Microsoft Visual Studio 2008 Express Edition zawierające kompilator Microsoft Visual C++ 2008. 2. Wiadomości teoretyczne 2.. Struktura programu w języku C W strukturze programu w języku C można wyróżnić dyrektywy preprocesora (np. #include, #define) oraz definicje funkcji (Rys. ). Każdy program musi zawierać przynajmniej jedną definicję funkcji. Funkcja ta powinna nazywać się main(). Od niej rozpoczyna się wykonanie całego programu. Oprócz funkcji main() w programie mogą występować także inne funkcje zdefiniowane przez użytkownika. 2.2. Ogólna struktura funkcji w języku C Ogólną strukturę funkcji w języku C przedstawia Rys. 2. Funkcja składa się nagłówka oraz ciała funkcji, które razem tworzą definicję funkcji. Nagłówek zawiera typ wartości zwracanej przez funkcję, nazwę funkcji oraz listę parametrów przekazywanych do niej podczas wywołania (uruchomienia). Ciało funkcji ograniczone jest nawiasami klamrowymi i. Pomiędzy nawiasami umieszczone są instrukcje. Funkcja kończy swoje działanie po wykonaniu instrukcji zawierającej słowo kluczowe return. Po return umieszcza się wartość, która zostanie zwrócona do miejsca wywołania funkcji. Typ tej wartości powinien być zgodny z nazwą typu umieszczoną w nagłówku funkcji. Słowo return może wielokrotnie pojawić się w ciele funkcji. Rys. 2. Ogólna struktura funkcji w języku C Poniżej zamieszczono przykład programu zawierającego dwie funkcje: Rys.. Struktura programu w języku C - main() - główna funkcja programu; - suma() - funkcja obliczająca sumę dwóch liczb rzeczywistych. Metodyki i techniki programowania 3 z 8 Instrukcja MITP0 Metodyki i techniki programowania 4 z 8 Instrukcja MITP0

Program zawierający funkcję obliczającą sumę dwóch liczb rzeczywistych. float suma(float a, float b) float y; y = a + b; return y; float x = 0.0, x2 = 20.0, wynik; wynik = suma(x,x2); printf("wynik = %f\n", wynik); Wynik = 30.000000 float suma(float a, float b) return (a+b); W wywołaniu funkcji jako argumenty mogą występować stałe liczbowe, nazwy zmiennych, wyrażenia arytmetyczne lub wywołania innych funkcji. wynik = suma(0,20); wynik = suma(x,x2); wynik = suma(x*20+4,x/x2); wynik = suma(sin(x),x+x2); printf("wynik = %f\n",suma(x,x2)); 2.3. Umieszczanie definicji funkcji w programie W programie przedstawionym w poprzednim rozdziale definicja funkcji suma() była umieszczona przed definicją funkcji main() (Rys. 3a). Wykonanie programu rozpoczyna się od funkcji main(). Gdy dochodzimy do instrukcji zawierającej funkcję suma(), to wywołanie tej funkcji powoduje przekazanie sterowania do jej pierwszej instrukcji. Do funkcji suma() przekazywane są dwa argumenty x i x2 typu float. Pierwszy parametr (a) otrzymuje wartość pierwszego argumentu wywołania funkcji (x), natomiast drugi parametr (b) - wartość drugiego argumentu wywołania funkcji (x2). Powrót z funkcji (do miejsca zaraz po jej wywołaniu) następuje na skutek wykonania instrukcji return. Wartość zwracana przez funkcję podstawiana jest pod zmienną wynik. Po słowie return może występować dowolne wyrażenie. Wyrażenie to często umieszczane jest w nawiasach, ale nie jest to konieczne. Funkcję suma() można zapisać w prostszy sposób: Rys. 3. Kolejność funkcji w programie: (a) - funkcja suma() przed funkcją main(), (b) funkcja suma() za funkcją main() Metodyki i techniki programowania 5 z 8 Instrukcja MITP0 Metodyki i techniki programowania 6 z 8 Instrukcja MITP0

Definicję funkcji suma() można umieścić także po definicji funkcji main(). Ponieważ zasięg widzialności funkcji rozpoczyna się od miejsca jej deklaracji, należy przed definicją funkcji main() podać formalną deklarację czyli prototyp funkcji suma() (Rys. 3b). Prototyp opisuje to samo co nagłówek, ale kończy się średnikiem. Dzięki prototypom kompilator ma możliwość sprawdzenia zgodności typów argumentów wywołania i parametrów funkcji. Program zawierający prototyp funkcji suma. float suma(float a, float b); float x = 0.0, x2 = 20.0, wynik; wynik = suma(x,x2); printf("wynik = %f\n", wynik); float suma(float a, float b) float y; y = a + b; return y; 2.4. Klasyfikacja funkcji Funkcja w języku C może zwracać wartość lub jej nie zwracać. Do funkcji mogą być przekazywane argumenty lub też może ich nie być (funkcja bezargumentowa). Z powyższych względów wyróżnia się cztery typy funkcji. Funkcje nie zwracające wartości i nie mające argumentów - w nagłówku funkcji, jako typ zwracanej wartości, podaje się słowo void, - w nagłówku funkcji, w miejscu listy jej parametrów, podaje się słowo void (tak zaleca standard języka C) lub nie wpisuje się nic, - jeśli w ciele funkcji występuje return, to nie może znajdować się za nim żadna wartość, - jeśli w ciele funkcji nie występuje return, to sterowanie wraca do punktu wywołania na skutek zakończenia wykonywania wszystkich instrukcji znajdujących się w funkcji, - definicja funkcji może mieć jedną z poniższych postaci: void nazwa(void) return; void nazwa() return; W prototypie nie musimy podawać nazw parametrów - wystarczą tylko typy: float suma(float, float); void nazwa(void) void nazwa() Jednakże podanie nazw parametrów wpływa na czytelność kodu programu. - w wywołaniu takiej funkcji podaje się jej nazwę i nawiasy ( ): nazwa(); Metodyki i techniki programowania 7 z 8 Instrukcja MITP0 Metodyki i techniki programowania 8 z 8 Instrukcja MITP0

Przykład programu zawierającego funkcję, która nie zwraca wartości i nie ma argumentów wywołania: void drukuj_linie(void) printf("---------------------------\n"); drukuj_linie(); printf("funkcje nie sa trudne!\n"); drukuj_linie(); --------------------------- Funkcje nie sa trudne! --------------------------- Funkcje nie zwracające wartości i mające argumenty - w nagłówku funkcji, jako typ zwracanej wartości, podaje się słowo void, - jeśli w ciele funkcji występuje return, to nie może znajdować się za nim żadna wartość, - jeśli w ciele funkcji nie występuje return, to sterowanie wraca do punktu wywołania na skutek zakończenia wykonywania wszystkich instrukcji znajdujących się w funkcji, - definicja funkcji może mieć jedną z poniższych postaci: void nazwa(parametry) return; void nazwa(parametry) - wywołanie funkcji: nazwa(argumenty); Przykład programu zawierającego funkcję, która nie zwraca wartości i ma argumenty wywołania: void drukuj_dane(char *imie, char *nazwisko, int wiek) printf("imie: %s\n",imie); printf("nazwisko: %s\n",nazwisko); printf("wiek: %d\n",wiek); printf("rok urodzenia: %d\n\n",204-wiek); drukuj_dane("jan","kowalski",23); drukuj_dane("barbara","nowak",28); Imie: Jan Nazwisko: Kowalski Wiek: 23 Rok urodzenia: 99 Imie: Barbara Nazwisko: Nowak Wiek: 28 Rok urodzenia: 986 Funkcje zwracające wartość i nie mające argumentów - w nagłówku funkcji, w miejscu listy jej parametrów, podaje się słowo void (tak zaleca standard języka C) lub nie wpisuje się nic, Metodyki i techniki programowania 9 z 8 Instrukcja MITP0 Metodyki i techniki programowania 0 z 8 Instrukcja MITP0

- typ wartości zwracanej przez funkcję musi być zgodny z typem wartości występującej po słowie return, - definicja funkcji może mieć jedną z poniższych postaci: typ nazwa(void) return wartość; typ nazwa() return wartość; - w wywołaniu funkcji zwracana wartość podstawiana jest pod zmienną: typ zmienna; zmienna = nazwa(); W roku jest: 3536000 sekund Funkcje zwracające wartość i mające argumenty - najbardziej popularny typ funkcji, - typ wartości zwracanej przez funkcję musi być zgodny z typem wartości występującej po słowie return, - definicja funkcji powinna mieć postać: typ nazwa(parametry) return wartość; - poprawne jest także wywołanie funkcji bez podstawiania zwracanej wartości pod zmienną: nazwa(); - w wywołaniu funkcji zwracana wartość podstawiana jest pod zmienną: typ zmienna; zmienna = nazwa(argumenty); Przykład programu zawierającego funkcję, która zwraca wartość i nie ma argumenty wywołania: - poprawne jest także wywołanie funkcji bez podstawiania zwracanej wartości pod zmienną: int liczba_sekund_rok(void) return (365 * 24 * 60 * 60); int wynik = liczba_sekund_rok(); printf("w roku jest: %d sekund\n",wynik); nazwa(argumenty); Przykład programu zawierającego funkcję, która zwraca wartość i ma argumenty wywołania: float prad(float nap, float rez) return (nap/rez); Metodyki i techniki programowania z 8 Instrukcja MITP0 Metodyki i techniki programowania 2 z 8 Instrukcja MITP0

float U, R, I; printf("podaj U [V]: "); scanf("%f",&u); printf("podaj R [Om]: "); scanf("%f",&r); void f(void) float a, c; /* zmienne lokalne */... int c, d; /* zmienne lokalne */ I = prad(u,r); printf("prad [A]: %g\n",i);... float e, f; /* zmienne lokalne */... Podaj U [V]: 230 Podaj R [Om]: 50 Prad [A]:.53333 2.5. Zmienne lokalne i zmienne globalne Zmienne zadeklarowane w funkcjach są zmiennymi lokalnymi widzianymi tylko w obrębie danej funkcji od miejsca, w którym zostały zadeklarowane. Ściślej mówiąc - zmienne lokalne widoczne są tylko do końca bloku funkcyjnego ograniczonego nawiasami klamrowymi. Zmienne zadeklarowane poza funkcjami są zmiennymi globalnymi widzianymi w całym programie od miejsca deklaracji. Jeśli zmienna globalna i lokalna mają takie same nazwy, to zmienna lokalna przesłania widzialność zmiennej globalnej w danej funkcji. Rozważmy następującą strukturę programu: int a, b; /* zmienne globalne */ Zmienne a i b typu int są zmiennymi globalnymi. Zmienne a i c typu float są zmiennymi lokalnymi widzianymi tylko w funkcji f(). Zmienne c i d typu int są zmiennymi lokalnymi widzianymi tylko w funkcji main(). Zmienna globalna b widziana jest w obu funkcjach: f() i main(). Zmienna globalna a widziana jest tylko w funkcji main(), gdyż w funkcji f() jej nazwa została przesłonięta przez zmienną lokalną a typu float. Zmienne lokalne e i f typu float są zmiennymi lokalnymi widocznymi tylko w bloku funkcyjnym, w którym zostały zdefiniowane. 3. Przebieg ćwiczenia Na pracowni specjalistycznej należy wykonać wybrane zadania wskazane przez prowadzącego zajęcia. W różnych grupach mogą być wykonywane różne zadania.. Napisz program zawierający funkcję wyświetlającą na ekranie Twoją wizytówkę o poniższej postaci. Wywołaj napisaną funkcję. ********************************** * Jan Kowalski * * e-mail: j.kowalski@gmail.com * * tel. 23-456-789 * ********************************** Metodyki i techniki programowania 3 z 8 Instrukcja MITP0 Metodyki i techniki programowania 4 z 8 Instrukcja MITP0

2. Energię elektryczną W pobraną w czasie t przez odbiornik o mocy P określa wzór: W = P t () Rezystancja R [Om]: 500 Indukcyjnosc L [H]: 0.03 Pojemnosc C [F]: 6.0e-5 ----------------------------------- Czestotliwosc fr [Hz]: 8.508408 f r = (4) 2π LC ( RC) 2 Napisz funkcję obliczającą i zwracającą zużycie energii elektrycznej (w kwh) pobranej przez odbiornik o mocy P w czasie t. W funkcji main() wczytaj z klawiatury wartości P i t, wywołaj napisaną funkcję, a następnie wyświetl wartość przez nią zwróconą. 3. Napisz funkcję zamieniającą odległość podaną w kilometrach na mile lądowe i funkcję zamieniającą odległość podaną w kilometrach na mile morskie. W funkcji main() wczytaj z klawiatury odległość w kilometrach, wywołaj napisane funkcje i wyświetl wartości przez nie zwrócone. Uwaga: mila lądowa = 609,344 metrów, mila morska = 85,852 metrów. 4. Napisz funkcję obliczającą i zwracającą rezystancję R jednorodnego przewodnika o przekroju poprzecznym S i długości l wykonanego z materiału o rezystywności ρ. Stosując funkcję oblicz rezystancję R przewodnika o długości l = 00 m i przekroju S = 2,5 mm 2 w przypadku, gdy jest on wykonany z miedzi, aluminium, srebra lub złota. 5. Napisz program zawierający funkcję obliczającą i zwracającą częstotliwość rezonansową fr układu o rezystancji R, indukcyjności L i pojemności C wprowadzonych z klawiatury w funkcji main(). Rezystancja R [Om]: 0 Indukcyjnosc L [H]: Pojemnosc C [F]:.0e-6 ----------------------------------- Czestotliwosc fr [Hz]: 59.46988 Rezystancja R [Om]: 00 Indukcyjnosc L [H]: 0.05 Pojemnosc C [F]: 5.0e-3 ---------------------------------- Czestotliwosc fr [Hz]: 0.060807 R f r = (5) 2π LC L L = (6) 2π LC R C f r 2 6. Suma poniższego szeregu liczbowego wynosi /4. Napisz program zawierający funkcję obliczającą i zwracającą sumę n-wyrazów tego szeregu. Następnie wykorzystując powyższą funkcję wyświetl różnice pomiędzy sumą dokładną (/4), a sumą n = 0, n = 00 i n = 000 wyrazów szeregu. + + + 2 3 2 3 4 L n( n + )( n + 2) (7) 7. Rys. 4 przedstawia przebieg impulsu trapezowego. Napisz funkcję, która na podstawie przekazanego do niej czasu t oblicza i zwraca wartość napięcia u. Następnie wykorzystując powyższą funkcję oblicz i wyświetl wartość napięcia dla czasu t równego: 0.0, 0.5,.0,, 5.5, 6.0 [s] (zastosuj pętlę for). 2 Przykładowe uruchomienie programu Rezystancja R [Om]: 0 Indukcyjnosc L [H]: 0. Pojemnosc C [F]:.0e-6 ---------------------------------- Czestotliwosc fr [Hz]: 503.54397 Rezystancja R [Om]: 5000 Indukcyjnosc L [H]: 0.02 Pojemnosc C [F]: 4.0e-5 ----------------------------------- Czestotliwosc fr [Hz]: 77.94243 f r Wzór = (2) 2π LC ( RC) 2 fr = 2π L LC R 2 (3) u[v] 4 3 2 2 3 4 5 t[s] Rys. 4. Przebieg impulsu trapezowego Metodyki i techniki programowania 5 z 8 Instrukcja MITP0 Metodyki i techniki programowania 6 z 8 Instrukcja MITP0

4. Literatura [] Kernighan B.W., Ritchie D.M.: Język ANSI C. Programowanie. Wydanie II. Helion, Gliwice, 200. [2] Prata S.: Język C. Szkoła programowania. Wydanie V. Helion, Gliwice, 2006. [3] King K.N.: Język C. Nowoczesne programowanie. Wydanie II. Helion, Gliwice, 20. [4] Summit S.: Programowanie w języku C. FAQ. Helion, Gliwice, 2003. [5] Wileczek R.: Microsoft Visual C++ 2008. Tworzenie aplikacji dla Windows. Helion, Gliwice, 2009. 5. Zagadnienia na zaliczenie. Opisz ogólną strukturę definicji funkcji w języku C. 2. Wyjaśnij czym różni się deklaracja od definicji funkcji? 3. Scharakteryzuj zmienne lokalne i globalne. 6. Wymagania BHP Warunkiem przystąpienia do praktycznej realizacji ćwiczenia jest zapoznanie się z instrukcją BHP i instrukcją przeciw pożarową oraz przestrzeganie zasad w nich zawartych. W trakcie zajęć laboratoryjnych należy przestrzegać następujących zasad. - Sprawdzić, czy urządzenia dostępne na stanowisku laboratoryjnym są w stanie kompletnym, nie wskazującym na fizyczne uszkodzenie. - Jeżeli istnieje taka możliwość, należy dostosować warunki stanowiska do własnych potrzeb, ze względu na ergonomię. Monitor komputera ustawić w sposób zapewniający stałą i wygodną obserwację dla wszystkich członków zespołu. - Sprawdzić prawidłowość połączeń urządzeń. - Załączenie komputera może nastąpić po wyrażeniu zgody przez prowadzącego. - W trakcie pracy z komputerem zabronione jest spożywanie posiłków i picie napojów. - W przypadku zakończenia pracy należy zakończyć sesję przez wydanie polecenia wylogowania. Zamknięcie systemu operacyjnego może się odbywać tylko na wyraźne polecenie prowadzącego. - Zabronione jest dokonywanie jakichkolwiek przełączeń oraz wymiana elementów składowych stanowiska. - Zabroniona jest zmiana konfiguracji komputera, w tym systemu operacyjnego i programów użytkowych, która nie wynika z programu zajęć i nie jest wykonywana w porozumieniu z prowadzącym zajęcia. - W przypadku zaniku napięcia zasilającego należy niezwłocznie wyłączyć wszystkie urządzenia. - Stwierdzone wszelkie braki w wyposażeniu stanowiska oraz nieprawidłowości w funkcjonowaniu sprzętu należy przekazywać prowadzącemu zajęcia. - Zabrania się samodzielnego włączania, manipulowania i korzystania z urządzeń nie należących do danego ćwiczenia. - W przypadku wystąpienia porażenia prądem elektrycznym należy niezwłocznie wyłączyć zasilanie stanowiska. Przed odłączeniem napięcia nie dotykać porażonego. Metodyki i techniki programowania 7 z 8 Instrukcja MITP0 Metodyki i techniki programowania 8 z 8 Instrukcja MITP0