for (i=1; i<=10; i=i+1) instrukcja; instrukcja zostanie wykonana 10 razy for (inicjalizacja; test; aktualizacja) instrukcja;



Podobne dokumenty
dr inż. Jarosław Forenc

for (i=0; i<10; i=i+1) instrukcja; instrukcja zostanie wykonana 10 razy for (inicjalizacja; test; aktualizacja) instrukcja;

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

dr inż. Jarosław Forenc

Podstawy programowania w języku C

PODSTAWY INFORMATYKI 1 PRACOWNIA NR 6

Stuck in the loop. Sterowanie. Marcin Makowski. 29 października Zak lad Chemii Teoretycznej UJ

Pracownia internetowa w ka dej szkole (edycja 2004/2005)

7. REZONANS W OBWODACH ELEKTRYCZNYCH

1. Podstawy budowania wyra e regularnych (Regex)

WYKŁAD 8. Postacie obrazów na różnych etapach procesu przetwarzania

Pomiary napięć i prądów w obwodach prądu stałego

2 Zarządzenie wchodzi w życie z dniem podpisania.

REGULAMIN PRZYZNAWANIA STYPENDIÓW NA KIERUNKACH ZAMAWIANYCH W RAMACH PROJEKTU POKL

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

Regulamin studenckich praktyk zawodowych w Państwowej Wyższej Szkole Zawodowej w Nowym Sączu

Wiedza niepewna i wnioskowanie (c.d.)

40. Międzynarodowa Olimpiada Fizyczna Meksyk, lipca 2009 r. ZADANIE TEORETYCZNE 2 CHŁODZENIE LASEROWE I MELASA OPTYCZNA

Matematyka:Matematyka I - ćwiczenia/granice funkcji

PROCEDURA REKRUTACJI DZIECI DO KLASY PIERWSZEJ DO SZKOŁY PODSTAWOWEJ W OSTASZEWIE NA ROK SZKOLNY 2015/2016

INSTRUKCJA WYPEŁNIANIA DEKLARACJI O WYSOKOŚCI OPŁATY ZA GOSPODAROWANIE ODPADAMI KOMUNALNYMI DLA DOMÓW OPIEKI, HOTELI, PENSJONATÓW, SZPITALI itp.

Procedura weryfikacji badania czasu przebiegu 1 paczek pocztowych

Strona 1. REGULAMIN OFERTY SPECJALNEJ RACHUNKU OSZCZĘDZAM Zyski dobrze skalkulowane w ramach kont dla osób fizycznych. Słowniczek

MATEMATYKA 9. INSTYTUT MEDICUS Kurs przygotowawczy do matury i rekrutacji na studia medyczne Rok 2017/2018 FUNKCJE WYKŁADNICZE, LOGARYTMY

Postanowienia ogólne. Wysokość Stypendium wynosi zł miesięcznie.

WSTĘP DO PROGRAMOWANIA

Opis programu do wizualizacji algorytmów z zakresu arytmetyki komputerowej

Wprowadzam : REGULAMIN REKRUTACJI DZIECI DO PRZEDSZKOLA NR 14

1. Koło Naukowe Metod Ilościowych,zwane dalej KNMI, jest Uczelnianą Organizacją Studencką Uniwersytetu Szczecińskiego.

Podstawy Elektrotechniki i Elektroniki

Komentarz technik dróg i mostów kolejowych 311[06]-01 Czerwiec 2009

PLAN POŁĄCZENIA SPÓŁEK

Dr inż. Andrzej Tatarek. Siłownie cieplne

Wyciąg ze Statutu Przedszkola Miejskiego Nr 12 w Pruszkowie

Statystyczna analiza danych w programie STATISTICA. Dariusz Gozdowski. Katedra Doświadczalnictwa i Bioinformatyki Wydział Rolnictwa i Biologii SGGW

PRAWA ZACHOWANIA. Podstawowe terminy. Cia a tworz ce uk ad mechaniczny oddzia ywuj mi dzy sob i z cia ami nie nale cymi do uk adu za pomoc

Zagadnienia transportowe

Regulamin Stypendium. Fundacji Rodziny Maciejko

cennik usługi Centrala DIATONIS

22 PRĄD STAŁY. CZĘŚĆ 1

Przykład implementacji przeciażeń operatorów problem kolizji

I. REKLAMA KIEROWANA DO LEKARZY

, dnia roku (miejscowość)

Zasady wizualizacji PROW

WYMAGANIA EDUKACYJNE I KRYTERIA OCENIANIA Z PRZEDMIOTU PROGRAMOWANIE APLIKACJI INTERNETOWYCH

Rozliczenia z NFZ. Ogólne założenia. Spis treści

UCHWAŁA NR.../.../2015 RADY MIASTA PUŁAWY. z dnia r.

Zarządzenie Nr 12 /SK/2010 Wójta Gminy Dębica z dnia 06 kwietnia 2010 r.

ZARZĄDZENIE Nr 61/2015 Rektora Uniwersytetu Wrocławskiego z dnia 7 maja 2015 r.

14.Rozwiązywanie zadań tekstowych wykorzystujących równania i nierówności kwadratowe.

REGULAMIN KONTROLI ZARZĄDCZEJ W MIEJSKO-GMINNYM OŚRODKU POMOCY SPOŁECZNEJ W TOLKMICKU. Postanowienia ogólne

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

Zasady podziału środków na działalność Kół Naukowych i Organizacji Studenckich w 2016 roku. Ogólnie

C compiler (Linux) Cześć 01 - Ćwiczenia strona 2 z 9

W przypadku kandydatów do klasy o ukierunkowaniu politechnicznym brane będą pod uwagę oceny z następujących przedmiotów: a) matematyka b) fizyka

ZAJ CIA 4. Podstawowe informacje o algorytmie. Operatory relacyjne i logiczne, instrukcja warunkowa if

Zasady rekrutacji do Publicznego Gimnazjum nr 1 im. Józefa Piłsudskiego w Brzegu zasady, tryb, postępowanie, dokumentacja rok szkolny 2016/2017

PROCEDURA DYPLOMOWANIA

INSTRUKCJA TESTOWANIA USŁUG NA PLATFORMIE ELA-ENT

REGULAMIN RADY RODZICÓW DZIAŁAJĄCEJ PRZY SZKOLE PODSTAWOWEJ NR 29 IM. GIUSEPPE GARIBALDIEGO W WARSZAWIE

Załącznik do umowy o dofinansowanie nr

KLAUZULE ARBITRAŻOWE

P R O C E D U R Y - ZASADY

Rekompensowanie pracy w godzinach nadliczbowych

UCHWAŁA Nr.. z dnia 5 maja 2016 r.

Zarządzenie Rektora Krakowskiej Akademii im. Andrzeja Frycza Modrzewskiego Nr 19/2015 z dnia 25 maja 2015 r.

Procedura nadawania uprawnień do potwierdzania Profili Zaufanych w Urzędzie Gminy w Ryjewie

UCHWALA NR XXXIXI210/13 RADY MIASTA LUBARTÓW. z dnia 25 września 2013 r.

P 0max. P max. = P max = 0; 9 20 = 18 W. U 2 0max. U 0max = q P 0max = p 18 2 = 6 V. D = T = U 0 = D E ; = 6

Procedura nadawania uprawnień do potwierdzania, przedłuŝania waŝności i uniewaŝniania profili zaufanych epuap. Załącznik nr 1

Ogólna charakterystyka kontraktów terminowych

Egzamin na tłumacza przysięgłego: kryteria oceny

II. PROGRAMOWANIE W JĘZYKU C...

Zestawienie wartości dostępnej mocy przyłączeniowej źródeł w sieci RWE Stoen Operator o napięciu znamionowym powyżej 1 kv

Witajcie. Trening metapoznawczy dla osób z depresją (D-MCT) 09/15 Jelinek, Hauschildt, Moritz & Kowalski; ljelinek@uke.de

ZESTAWIENIE UWAG. na konferencję uzgodnieniową w dn r. poświęconą rozpatrzeniu projektu. rozporządzenia Prezesa Rady Ministrów

Procedura działania Punktu Potwierdzającego Profile Zaufane epuap w Urzędzie Miejskim w Gdańsku

STATUT POLSKIEGO STOWARZYSZENIA DYREKTORÓW SZPITALI W KRAKOWIE. Rozdział I

1. Wprowadzenie do C/C++

Arkusz zawiera informacje prawnie chronione do momentu rozpocz cia egzaminu.

Regulamin rekrutacji uczniów do klasy pierwszej Szkoły Podstawowej im. Maksymiliana Wilandta w Darzlubiu. Podstawa prawna: (Dz.U.2014 poz.

Regulamin Pracy Komisji Rekrutacyjnej w Publicznym Przedszkolu Nr 5 w Kozienicach

ZADANIA ORGANU PROWADZĄCEGO SZKOŁĘ (według stanu prawnego na 27 marca 2013 r.)

Architektura Systemów Komputerowych. Sterowanie programem skoki Przerwania

Załącznik nr 7 DO UMOWY NR. O ŚWIADCZENIE USŁUG DYSTRYBUCJI PALIWA GAZOWEGO UMOWA O WZAJEMNYM POWIERZENIU PRZETWARZANIA DANYCH OSOBOWYCH

WNIOSEK o przyznanie dofinansowania na zakup podręczników. dla ucznia klasy.. (nazwa szkoły/placówki oświatowej)

Oryginał/Kopia U M O W A

Zasady przyznawania stypendiów doktoranckich na Wydziale Fizyki Uniwersytetu Warszawskiego na rok akademicki 2016/2017

NAJWYśSZA IZBA KONTROLI DELEGATURA W GDAŃSKU

Regulamin Konkursu BHP pt.: Bezpieczny wykonawca na terenie ANWIL S.A. w czasie trwania remontu w 2014 r.

dr inż. Jarosław Forenc

STATUT KOŁA NAUKOWEGO KLUB INWESTORA

PowerShell. Sławomir Wawrzyniak

Programowanie I C / C++ laboratorium 03 arytmetyka, operatory

REGULAMIN RADY RODZICÓW Szkoły Podstawowej w Wawrzeńczycach

REGULAMIN. przeprowadzania naboru nowych pracowników do korpusu służby cywilnej w Kuratorium Oświaty w Szczecinie.

Regulamin rekrutacji do Gimnazjum w Chwaliszewie na rok szkolny 2016/2017

ROZPORZĄDZENIE MINISTRA SPRAW WEWNĘTRZNYCH I ADMINISTRACJI[1]) z dnia r.

BZ WBK AIB Towarzystwo Funduszy Inwestycyjnych S.A. pl. Wolności 16, Poznań telefon: (+48) fax: (+48)

18 TERMODYNAMIKA. PODSUMOWANIE

Transkrypt:

Rok akademicki 2011/2012, Pracownia nr 8 2/30 Informatyka 1 Politechnika Białostocka - Wydział Elektryczny Elektrotechnika, semestr II, studia stacjonarne I stopnia Rok akademicki 2011/2012 Pracownia nr 8 (25.04/04.05.2012) dr inż. Jarosław Forenc Pętla for for (inicjalizacja; test; aktualizacja) instrukcja; for (i=1; i<=10; i=i+1) instrukcja; instrukcja zostanie wykonana 10 razy inicjalizacja fałsz test prawda instrukcja aktualizacja Rok akademicki 2011/2012, Pracownia nr 8 3/30 Rok akademicki 2011/2012, Pracownia nr 8 4/30 Przykład - wyświetlenie tekstu Przykład - wyświetlenie tekstu int i; int i; for (i=1; i<=5; i=i+1) printf("\n"); for (i=1; i<=5; i=i+1) printf("\n");

Rok akademicki 2011/2012, Pracownia nr 8 5/30 Rok akademicki 2011/2012, Pracownia nr 8 6/30 Pętla for Pętla for for (i=1; i<=10; i=i+1) 1 2 3 4 5 6 7 8 9 10 for (i=1; i<=10; i=i+2) 1 3 5 7 9 for (i=0; i<10; i=i+1) 0 1 2 3 4 5 6 7 8 9 for (i=10; i>0; i=i-1) 10 9 8 7 6 5 4 3 2 1 for (i=0; i<10; i=i+1) printf("%d ",i+1); 1 2 3 4 5 6 7 8 9 10 for (i=-9; i<=9; i=i+3) -9-6 -3 0 3 6 9 Rok akademicki 2011/2012, Pracownia nr 8 7/30 Rok akademicki 2011/2012, Pracownia nr 8 8/30 Przykład - suma liczb 1+2+ +10 #define N 10 int i, suma=0; for (i=1; i<=n; i=i+1) suma = suma + i; Suma 10 liczb to 55 printf("suma %d liczb to %d\n", N, suma); Przykład - suma liczb 1+2+ +1000 #define N 1000 int i, suma=0; for (i=1; i<=n; i++) suma += i; Suma 1000 liczb to 500500 printf("suma %d liczb to %d\n", N, suma);

Rok akademicki 2011/2012, Pracownia nr 8 9/30 Rok akademicki 2011/2012, Pracownia nr 8 10/30 Operator inkrementacji (++) Operator inkrementacji (++) ++x lub x++ zwiększa wartość zmiennej o 1 ++x x++ - operator preinkrementacji - operator postinkrementacji ++x; x++; x = x + 1; operator jednoargumentowy może być stosowany tylko do zmiennych (nie wolno stosować do wyrażeń) int x = 1, y; int x = 1, y; y = 2 * ++x; ++x x = 2 y = 2 * x++; 2 * x 2 * 1 2 * ++x 2 * 2 y = 2 * x y = 2 y = 2 * ++x y = 4 x++ x = 2 x = 2, y = 4 x = 2, y = 2 Rok akademicki 2011/2012, Pracownia nr 8 11/30 Rok akademicki 2011/2012, Pracownia nr 8 12/30 Operator dekrementacji (--) --x x-- - operator predekrementacji - operator postdekrementacji zmniejsza wartość zmiennej o 1 --x; x--; x = x - 1; Operatory ++ i -- x = x++; x = ++x; x = x--; x = --x; wartość powyższych instrukcji jest nieokreślona nie należy stosować operatorów ++, -- do zmiennych pojawiających się w wyrażeniu więcej niż jeden raz

Rok akademicki 2011/2012, Pracownia nr 8 13/30 Rok akademicki 2011/2012, Pracownia nr 8 14/30 Skrócone operatory przypisania wyr1 = wyr1 op wyr2 wyr1 op= wyr2 x = x + 10; x += 10; y = y 2.5; y = 2.5; a = a * 14.3; a *= 14.3; b = b / 20.12; b /= 20.12; operatory: +, -, *, /, %, <<, >>, &, ^, Operatory bitowe Pętla for - instrukcja złożona wykonanie w pętli for więcej niż jednej instrukcji wymaga umieszczenia ich w dodatkowych nawiasach klamrowych for (wyr1; wyr2; wyr3) instrukcja1; instrukcja2;... Rok akademicki 2011/2012, Pracownia nr 8 15/30 Rok akademicki 2011/2012, Pracownia nr 8 16/30 Przykład - średnia arytmetyczna Przykład - średnia arytmetyczna int i, x, suma = 0; float srednia; for (i=0; i<10; i++) printf("liczba %02d: ",i+1); scanf("%d",&x); suma += x; srednia = suma / 10.0f; printf("srednia: %.2f\n",srednia);

Rok akademicki 2011/2012, Pracownia nr 8 17/30 Rok akademicki 2011/2012, Pracownia nr 8 18/30 Przykład - średnia arytmetyczna Przykład - rezonans prądów srednia = suma / 10.0f; printf("srednia: %.2f\n",srednia); Liczba 01: 34 Liczba 02: 78 Liczba 03: 56 Liczba 04: 23 Liczba 05: 1 Liczba 06: 95 Liczba 07: 73 Liczba 08: 56 Liczba 09: 23 Liczba 10: 78 Srednia: 51.70 Obwód elektryczny ma następujące parametry: R = 15 Ω, L = 0,125 H, C = 0,254 mf. Wyznacz pulsację rezonansową (rezonans prądów) obwodu jeśli jego admitancja zastępcza określona jest poniższym wzorem: Y = R 2 R + X 2 C + C ( 2 2 R + X C Wskazówka: zbadaj pulsację w zakresie od 100 do 500 rad/s z krokiem 0,1 rad/s. j X 1 X L ) Rok akademicki 2011/2012, Pracownia nr 8 19/30 Rok akademicki 2011/2012, Pracownia nr 8 20/30 Przykład - rezonans prądów Przykład - rezonans prądów #include <math.h> double R = 15.0; double L = 0.125; double C = 0.254e-3; double XL, XC; double Im, ImMin, w, wmin; wmin = 100.0; XL = wmin*l; XC = 1.0/(wMin*C); ImMin = fabs(xc/(r*r+xc*xc)-1.0/xl); for (w=100.1; w<=500; w+=0.1) XL = w*l; XC = 1.0/(w*C); Im = fabs(xc/(r*r+xc*xc)-1.0/xl); if (Im<ImMin) ImMin = Im; wmin = w; printf("pulsacja: %g\n",wmin); printf("im(y): %g\n",immin);

Rok akademicki 2011/2012, Pracownia nr 8 21/30 Rok akademicki 2011/2012, Pracownia nr 8 22/30 Przykład - rezonans prądów Pętla for - błędy for (w=100.1; w<=500; w+=0.1) Pulsacja: 240.9 Im(Y): 2.37284e-006 XL = w*l; XC = 1.0/(w*C); Im = fabs(xc/(r*r+xc*xc)-1.0/xl); if (Im<ImMin) ImMin = Im; wmin = w; printf("pulsacja: %g\n",wmin); printf("im(y): %g\n",immin); średnik na końcu pętli for: for (i=1; i<=10; i++) ; 11 przecinki zamiast średników w pętli for: for (i=1, i<=10, i++) błąd kompilacji Rok akademicki 2011/2012, Pracownia nr 8 23/30 Rok akademicki 2011/2012, Pracownia nr 8 24/30 Pętla for - błędy błędny warunek - brak wykonania instrukcji: for (i=1; i>=10; i++) błędny warunek - pętla nieskończona: for (i=1; i>0; i++) 1 2 3 4 5 6 7 8 9 Pętla for - pętla niekończona for (wyr1; wyr2; wyr3) instrukcja; wszystkie wyrażenia w pętli for są opcjonalne for ( ; ; ) instrukcja; - pętla nieskończona w przypadku braku wyr2 przyjmuje się, że jest ono prawdziwe

Rok akademicki 2011/2012, Pracownia nr 8 25/30 Rok akademicki 2011/2012, Pracownia nr 8 26/30 Instrukcja break break - przerywa wykonywanie pętli for Instrukcja continue continue - przerywa bieżącą iterację i przechodzi do kolejnej for (i=0; i<10; i++) if (i%5==0) break; printf( %d\n,i); for (i=0; i<10; i++) if (i%5==0) continue; printf( %d\n,i); Rok akademicki 2011/2012, Pracownia nr 8 27/30 Rok akademicki 2011/2012, Pracownia nr 8 28/30 Instrukcja goto goto - bezwarunkowy skok do etykiety stosowanie tej instrukcji nie jest zalecane for (i=0; i<10; i++) if (i%5==0) goto dalej; printf( %d\n,i); dalej: printf( koniec\n ); - można skoczyć do dowolnego miejsca w programie - etykieta musi poprzedzać instrukcję Zagnieżdżanie pętli for jako instrukcja występuje kolejna pętla for for (i=1; i<=3; i++) for (j=1; j<=2; j++) printf( i=%d, j=%d\n,i,j); dla i = 1 for (j=1; j<=2; j++) printf( i=%d, j=%d\n,i,j); dla i = 2 for (j=1; j<=2; j++) printf( i=%d, j=%d\n,i,j); dla i = 3 for (j=1; j<=2; j++) printf( i=%d, j=%d\n,i,j); - pętla zewnętrzna - pętla wewnętrzna i=1, j=1 i=1, j=2 i=2, j=1 i=2, j=2 i=3, j=1 i=3, j=2

Rok akademicki 2011/2012, Pracownia nr 8 29/30 Rok akademicki 2011/2012, Pracownia nr 8 30/30 Przykład - tabliczka mnożenia int i, j; for (i=1; i<11; i++) for (j=1; j<11; j++) printf("%2d ", i*j); printf("\n"); Przykład - tabliczka mnożenia 1 2 3 4 5 6 7 8 9 10 2 4 6 8 10 12 14 16 18 20 3 6 9 12 15 18 21 24 27 30 4 8 12 16 20 24 28 32 36 40 int i, j; 5 10 15 20 25 30 35 40 45 50 6 12 18 24 30 36 42 48 54 60 for (i=1; i<11; 7 i++) 14 21 28 35 42 49 56 63 70 8 16 24 32 40 48 56 64 72 80 for (j=1;j<11;j++) 9 18 27 36 45 54 63 72 81 90 printf("%2d 10 20 ",i*j); 30 40 50 60 70 80 90 100 printf("\n");