Skip to content
anagorko edited this page Sep 30, 2014 · 6 revisions

Pętle

Pętlą for wypisująca na ekranie liczby od 1 do 10

int i;

for (i = 1; i <= 10; i++) {
    cout << i << " ";
}

Zwróć uwagę na trzy instrukcje będące parametrami pętli:

  1. i = 1 - inicjalizacja, wykonywana jednokrotnie na samym początku.

  2. i <= 10 - warunek sprawdzany przed każdym obrotem pętli. Jeżeli warunek jest fałszywy, to program wychodzi z pętli.

  3. i++ - instrukcja wykonywana po każdym obrocie pętli.

To samo za pomocą instrukcji while:

int i = 1;

while (i <= 10) {
    cout << i << " ";
    i++;
}

To samo za pomocą do ... while:

int i = 1;

do {
    cout << i << " ";
    i++;
} while { i <= 10; }

Ćwiczenie: zmodyfikuj powyższy program (obie wersje) tak, by wypisywał liczby od 0 do 100.

Ćwiczenie: zmodyfikuj powyższy program (obie wersje) tak, by wypisywał liczby od 100 do 0.

Ćwiczenie: zmodyfikuj powyższy program (obie wersje) tak, by wypisywał liczby parzyste od 0 do 100.

Zadania

Zadanie: witamy na pokładzie!

Napisz program wyświetlający n razy (trzeba zapytać o n) napis „Witamy na pokładzie!”, za pomocą

  1. pętli for

  2. pętli while

  3. pętli do ... while

Zadanie: nieparzyste przodem

Napisz program, który wyświetla na ekranie najpierw liczby nieparzyste od 1 do 99, a następnie liczby parzyste od 2 do 100.

Zadanie: foo

Napisz program, który wyświetla liczby od 1 do 100, ale każdą liczbę podzielną przez 3 zastępując tekstem „foo”.

Zadanie: foobar

Napisz program, który wyświetla liczby od 1 do 100, zamiast liczb podzielnych przez 3 wypisując „foo”, zamiast liczby podzielnych przez 5 wypisując „bar” a zamiast liczb podzielnych przez 3 i przez 5 wypisując „foobar”.

Zadanie: suma liczb

Napisz program obliczający sumę liczb nieparzystych mniejszych od miliarda.

Zadanie: suma liczb II

Napisz program, który pyta o liczbę n a następnie o n liczb, których sumę wyświetla na ekranie.

Zadanie: średnia

Napisz program jak wyżej, ale obliczający średnią arytmetyczną podanych liczb.

Zadanie: najmniejsza i największa

Napisz program jak wyżej, ale obliczący najmniejszą i największą z podanych liczb.

Zadanie: flaga polska

Napisz program, który odczytuję liczbę n a następnie wyświetla flagę polską o szerokości 4n i wysokości 2n.

3
............
............
............
############
############
############

Zadanie: od 1 do 100, dziesiątkami (sto.cpp)

Napisz w języku C++ program, który wypisze liczby od 1 do 100 w następujący sposób:

1	2	3	4	5	6	7	8	9	10
11	12	13	14	15	16	17	18	19	20
.
.
.
81	82	83	84	85	86	87	88	89	90
91	92	93	94	95	96	97	98	99	100

(na podstawie http://zso6.awardspace.com/tablice.doc)

Project Euler: Multiplies of 3 and 5.

Liczby naturalne mniejsze od 10, które są wielokrotnościami 3 lub 5, to 3, 5, 6 i 9. Ich suma równa jest 23.

Napisz program, który oblicza sumę wielokrotności 3 i 5 mniejszych niż 1000.

Wynik zweryfikuj wysyłając rozwiązanie na stronę http://projecteuler.net (trzeba się zarejestrować).

Project Euler: Even Fibonacci numbers.

W ciągu Fibonacciego kolejny wyraz obliczamy jako sumę dwóch poprzednich. Jeżeli zaczniemy od jedynki i dwójki, pierwszymi dziesięcioma elementami ciągu będą

1, 2, 3, 5, 8, 13, 21, 34, 55, 89, ...

Spośród nich 2, 8 i 34 to elementy parzyste - są to jedyne elementy parzyste, których wartość nie przekracza 50. Ich suma to 2 + 8 + 34 = 44.

Zadanie: oblicz sumę parzystych elementów ciągu, których wartość nie przekracza czterech milionów.

Wynik zweryfikuj wysyłając rozwiązanie na stronę http://projecteuler.net (trzeba się zarejestrować).