Паскаль тілінде программалау - Тақырып 6. Таңдау операторы
- Есеп: Ай нөмірін енгізіп, осы айдағы күндердің санын шығару.
- Шығарылуы: Айдағы күндер саны
- 28 күн – 2 (ақпан)
- 30 күн – 4 (сәуір), 6 (маусым), 9 (қыркүйек), 11 (қараша)
- 31 күн – 1 (қаңтар), 3 (наурыз), 5 (мамыр), 7 (шілде), 8 (тамыз), 10 (қазан), 12 (желтоқсан)
- Ерекшелігі: Екі нұсқаның емес, айдың нөміріне сәйкес бірнеше нұсқаның бірін таңдау.
- Бұған дейінгі қолданған әдістермен шешуге бола ма?
- ешбір нұсқасы сәйкес келген жоқ
- program qq;
- var M, D: integer;
- begin
- writeln(‘Айдың нөмірін енгіз:');
- read ( M );
- case M of
- 2: begin D := 28; end;
- 4,6,9,11: begin D := 30; end;
- 1,3,5,7,8,10,12: D := 31;
- else D := -1;
- end;
- if D > 0 then
- writeln(‘Бұл айда ', D, ' күн.')
- else
- writeln('Айдың нөмірі дұрыс емес');
- end.
- case M of
- 2: begin D := 28; end;
- 4,6,9,11: begin D := 30; end;
- 1,3,5,7,8,10,12: D := 31;
- else D := -1;
- end;
- ешбір нұсқасы сәйкес келген жоқ
- Ерекшеліктері:
- case-тен кейін айнымалы атауы немесе бүтін типті (integer) арифметикалық өрнек
- немесе символдық типті (char) арифметикалық өрнек
- case i+3 of
- 1: begin a := b; end;
- 2: begin a := c; end;
- end;
- var c: char;
- ...
- case c of
- 'а': writeln(‘Бөкен');
- 'б': writeln('Борсық');
- else writeln(‘Білмеймін');
- end;
- Ерекшеліктері:
- егер бір ғана операторды орындау керек болса, begin мен end сөздерін жазбай кетуге болады
- бірдей екі мәнді қоюға болмайды
- case i+3 of
- 1: a := b;
- 1: a := c;
- end;
- case i+3 of
- 1: a := b;
- 2: a := c;
- end;
- Ерекшеліктері:
- бірдей әрекеттер орындалатын кезде қолданылатын мәндерді топтастыру қажет
- case i of
- 1: a := b;
- 2,4,6: a := c;
- 10..15: a := d;
- 20,21,25..30: a := e;
- else writeln(‘Қате');
- end;
- case a of
- 2: begin a := b;
- 4: a := c;
- end;
- case a of
- 2: a := b
- 4: a := c
- end;
- case a of
- 2..5: a := b;
- 4: a := c;
- end;
- case a of
- 0..2: a := b;
- 6..3: a := c;
- end;
- case a+c/2 of
- 2: a := b;
- 4: a := c;
- end;
- case a of
- 2: a := b; d := 0;
- 4: a := c;
- end;
- Тапсырмалар (бұрыс енгізуден қорғаумен)
- "4": Айдың нөмірін енгізе отырып, осы айдағы күндердің санын және енгізу кезінде жіберілген қателердің санын есептеп шығару.
- Мысал:
- Ай нөмірін енгіз: Ай нөмірін енгіз:
- -2 2
- Ай нөмірін енгіз: Бұл айда 28 күн бар.
- 11 Сіз 0 рет қате енгіздіңіз.
- Бұл айда 30 күн бар.
- Сіз 1 рет қате енгіздіңіз.
- "5": Айдың нөмірі мен күннің нөмірін енгізіп, Жаңа жылға дейін қалған күндердің санын анықтау.
- Мысал:
- Ай нөмірін енгіз:
- 12
- Күнді енгіз:
- 25
- Жаңа жылға дейін 6 күн бар.
Паскаль тілінде программалау - Cызықтың түсі мен қалыңдығы, нүктелердің түсі:
- Бояудың түсі мен стилі:
- Мәтін түсі:
- Нүктелер, кесінділер және қисық сызықтар
- Pen (1, 0, 255, 0); Line (x1, y1, x2, y2);
- Pen (1, 0, 0, 255);
- Point (x, y);
- Pen (1, 255, 0, 0); MoveTo (x1, y1); LineTo (x2, y2);
- LineTo (x3, y3);
- LineTo (x4, y4);
- LineTo (x5, y5);
- Pen (1, 0, 0, 255);
- Brush (1, 255, 255, 0);
- Rectangle (x1, y1, x2, y2);
- Pen (1, 255, 0, 0);
- Brush (1, 0, 255, 0);
- Ellipse (x1, y1, x2, y2);
- Brush (1, 100, 200, 255);
- Fill (x, y);
- TextColor (0, 0, 255);
- Brush (1, 255, 255, 0);
- Font (20, 30, 600);
- MoveTo (x, y);
- writeln (‘Салем!');
- қанықтылық:
- 400 – қалыпты
- 600 – қалың
- program qq;
- begin
- Pen(2, 255, 0, 255);
- Brush(1, 0, 0, 255);
- Rectangle(100, 100, 300, 200);
- MoveTo(100, 100);
- LineTo(200, 50);
- LineTo(300, 100);
- Brush(1, 255, 255, 0);
- Fill(200, 75);
- Pen(2, 255, 255, 255);
- Brush(1, 0, 255, 0);
- Ellipse(150, 100, 250, 200);
- end.
- Rectangle (x1, y1, x2, y2);
- Line( x1+h, y1, x1+h, y2);
- Line( x1+2*h, y1, x1+2*h, y2);
- Line( x1+3*h, y1, x1+3*h, y2);
- ...
- h := (x2 – x1) / (N + 1);
- Rectangle (x1, y1, x2, y2);
- x := x1 + h;
- for i:=1 to N do begin
- Line( round(x), y1, round(x), y2);
- x := x + h;
- end;
- жақын орналасқан бүтін санға дейін дөңгелектеу
- Түсті қалай өзгертуге болады?
- Brush ( 1, c, c, c );
- Fill ( ???, ??? );
- hc := 255 div (N + 1);
- c := 0;
- for i:=1 to N+1 do begin
- Line (round(x), y1, round(x), y2);
- Brush (1, c, c, c);
- Fill (round(x)-1, y1+1);
- x := x + h; c := c + hc;
- end;
- Line( x1+h, y1, x1+h-a, y2);
- Line( x1+2*h, y1, x1+2*h-a, y2);
- Line( x1+3*h, y1, x1+3*h-a, y2);
- ...
- h := (x3 – x2) / (N + 1);
- a := x1 – x2;
- x := x1 + h;
- for i:=1 to N do begin
- Line( round(x), y1, round(x-a), y2);
- x := x + h;
- end;
- Line( x1, y1+hy, x1+hx, y1+hy) ;
- Line( x1, y1+2*hy, x1+2*hx, y1+2*hy);
- Line( x1, y1+3*hy, x1+3*hx, y1+3*hy);
- ...
- hx := (x2 – x1) / (N + 1);
- hy := (y2 – y1) / (N + 1);
- x := x1 + hx; y := y1 + hy;
- for i:=1 to N do begin
- Line( x1, round(y), round(x), round(y));
- x := x + hx; y := y + hy;
- end;
- "4": Пернетақтадан штрих сызықтарының санын енгізе отырып фигура салу және оның ішін әр түрлі түстермен бояу.
-
- "5": Пернетақтадан шеңберлердің санын енгізу арқылы шеңбердің суретін салу және оның ішіндегі әр шеңберді әр түрлі түске бояу.
Достарыңызбен бөлісу: |