continue break return algorytmy.doc

(61 KB) Pobierz
Języki i metody programowania C2

Instrukcje: continue, break, return. 

Tablice, podstawowe algorytmy operujące na tablicach

 

1) Instrukcja continue

 

Składnia:                              continue ;

 

Działanie: kończy działanie instrukcji pętli while, do..while, for w miejscu wystąpienia i przechodzi do kolejnego jej wykonania


2) Instrukcja break

 

Składnia:                              break;

 

Instrukcja break przerywa pętle while, do ..while, for oraz instrukcję wyboru switch w miejscu wystąpienia.


3) Instrukcja return

 

Składnia:                                          return [ <wyrażenie> ];

 

Przerywa działanie funkcji, opcjonalnie zwracając wartość, jeśli definicja funkcji tego wymaga. W przypadku funkcji main kończy program.


Przykłady:

 

Program liczy liczby podzielne przez 3 i pozostałe

void main()                                          // wersja programu z pętlą while

{

   int i=0, p=0, n=0;

              while (i++)                                          //kolejna liczba ipętla while nieskończona

              {

           if(i%3 == 0)

                            {

                p++;                                          //p liczy liczby podzielne przez 3

                continue;

                            }

                            n++;                                                        //p liczy liczby niepodzielne przez 3

                            if (n==10)                              //jeśli n==10 to nastąpi przerwanie pętli

                break;                                          //jeśli n!=10, tp przejście do następnej pętli

              }

}                                                                                    // p=4, n=10, i=14


void main()                                           //wersja programu z pętlą for

{

              for (int i=1, p=0, n=0; ; i++)                            //kolejna liczba i – pętla for nieskończona

              {

            if (i %3 == 0)

                            {

                p++;                                          //p liczy liczby podzielne przez 3

                              continue;                            //dla parzystych i  przechodzi do kolejnej pętli

}                                                        //zwiększając i o 1 – i++

                     n++;                                                        //n liczy liczby niepodzielne przez 3

            if (n==10) break;              //jeśli n!=10, to nowa pętla po wykonaniu i++

              }                                                                      //jeśli n==10, to przerwanie instrukcji for

}                                                                                                                // p=4, n=10, i=14


#include <conio.h>

#include <stdio.h>

void main()                                                                     //Kalkulator dwudziałaniowy

{ char z;

   float a, b, wynik;

   clrscr();

  do

              {

              getch();

              clrscr();

              puts("* Mnozenie\n / Dzielenie\n operator k - wyjscie z programu\n ");

              puts("Podaj argument, operator argument: ");

              scanf("%f %c %f", &a, &z, &b);

              switch(z)

              { case '*'              :              wynik=a*b;               break;                                                          //koniec switch

                 case '/'              :               if (b!=0)

                                            { wynik=a/b;               break;                                                         //koniec switch

                                                          }

                                                  else

                                                   { puts("Dzielenie przez zero\n");

                                                     continue;                 //przejście do nowej pętli po teście wyrażenia while

                                                   }

                 case 'k'              :               puts("Koniec programu\n");  getch();

                                                        return;                                                                                        //koniec funkcji main

                 default              :               puts("Nieznany operator\n");

                                                        continue;                           //przejście do nowej pętli po teście wyrażenia while

              }

              printf("%f %c %f=%f\n", a, z, b, wynik);                                              

  } while (1);                                                                                                                                   //pętla nieskończona

}


4) Tablice

 

T   D [wyrażenie stałe] 

 

  jest tablicą  D elementów typu T, których liczba jest równa wyrażeniu stałemu.

 

1.    Liczba elementów, jeśli jest podana, musi być typu całkowitego i mieć wartość większą od zera.

 

2.    Elementami tablicy są następujące typy danych T:

·       typy podstawowe (za wyjątkiem void),

·       inne tablice (powstają tzw. tablice wielowymiarowe)

·       wskaźniki

·       wskaźniki do składowych

·       klasy

·       wyliczenia

 

3.    Jeśli wyrażenie stałe ma wartość równą np. 10, to elementy  tej tablicy są ponumerowane od 0 do 9

 

4. Dostęp do elementów jest możliwy za pomocą operatora indeksowania []. Liczba umieszczona w nawiasach jest numerem elementu liczonym od zera

   np. int tab1 [3];                               definicja tablicy trzech elementów typu int

   tab1[2]                                                  trzeci element tablicy typu int

   tab1[0]                           pierwszy element tablicy typu int


Przykłady tablic:

char tab2[3];                              tablica zawiera trzy elementy typu char - łańcuch

char tab3[3][4];               tablica zawiera trzy elementy typu tablica znaków. Każdy element tablicy jest tablicą czterech elementów typu char

char tab4[3][4][5]              tablica zawiera trzy elementy typu tablica czterech elementów typu tablica pięciu elementów typu  char

int* tab5 [3];                               tablica zawiera trzy elementy typu wskaźnik na *int


const int N=1;                  stała typu int

int tab6 [N];                  tablica zawierająca N ( 10) elementów typu int (tylko w C++)

 

#define M 10                 stała zdefiniowana za pomocą makrodefinicji prostej

int tab7 [M];                  tablica zawierająca N ( 10) elementów typu int


Przykład 1 - tablica składa się z pięciu elementów typu int zawierających kolejno wartości wylosowane. Można ją zdefiniować jako: int tablica [5].

Program liczy sumę elementów parzystych elementów i podaje wartość średnią parzystych elementów

 

0

37

1

89

2

20

3

54

4

66

 

#include <stdio.h>

#include <stdlib.h>

#include <conio.h>

void main()  ...

Zgłoś jeśli naruszono regulamin