<< Chapter < Page Chapter >> Page >
Решени задачи со раздранета структура за чија реализација се користат структурите if и if...else.

Задачи со разгранување

Пример 1.

Што ќе отпечати следниот програмски сегмент:

int x = 3; if (x)printf ("DA\n"); else printf ("NE\n");

Одговор:

Ќе отпечати DA поради тоа што x има „ненулта“ вредност.

Пример 2.

Под кои услови ќе се отпечати зборот Voda во следниот програмски сегмент?

if(T<0) printf("Mraz\n");else if(T<100) printf("Voda\n");else printf("Parea\n");

Одговор:

Доколку Τ е поголемо или еднакво на 0 и помало од 100. Да се внимава на ова поголемо или еднакво .

Пример 3.

Да се напише програма што врши квантификација на внесениот цел број: Се внесува цел број (x), тој се проверува и се печати соодветниот текст што го опишува бројот, според следната табела:

ако x е поголем или еднаков на 1000 се печати “претерано позитивен”

ако x е помеѓу 999 и 100 (вклучувајќи 100) се печати “многу позитивен”

ако x е помеѓу 100 и 0 (без 0) се печати “позитивен”

ако x е еднаков на 0 се печати “нула”

ако x е помеѓу 0 и -100 се печати “негативен”

ако x е помеѓу -100 и -999 (вклучувајќи -100) се печати “многу негативен”

ако x е помал или еднаков на -1000 се печати “претерано негативен”

На пример, за -10 ќе печати “негативен”, за -100 ќе печати “ многу негативен”, а за 458 печати “многу позитивен”

Програма:

#include<stdio.h>int main () {int i; printf (“Vnesete cel broj: \n”);scanf (“%i”,&i); if (i>=1000 || i<= -1000 ) printf (“preterano ”);else if (i>=100 || i<= -100 ) printf (“mnogu ”);if (i>0) printf (“pozitiven\n”);else if (i==0)printf (“nula\n”); else if (i<0) printf (“negativen\n”);return 0; }

Пример 4.

Да се напише програма што ќе ги генерира оценките врз основа на освоените поени од испитот, според следната табела:

поени: 0-50 oцена: 5

поени: 51-60 oцена: 6

поени: 61-70 oцена: 7

поени: 71-80 oцена: 8

поени: 81-90 oцена: 9

поени: 91-100 oцена: 10

Програма:

#include<stdio.h>void main () {int i, ocena; printf (“Vnesete poeni: \n”);scanf (“%d”,&i); ocena = 0;if (i>=0&&i<=50 ) ocena = 5;else if (i>50&&i<=60 ) ocena = 6;else if (i>60&&i<=70 ) ocena = 7;else if (i>70&&i<=80 ) ocena = 8;else if (i>80&&i<=90 ) ocena = 9;else if (i>90&&i<=100 ) ocena = 10;else printf (“Vnesen e pogreshen broj za poenite!!\n”);if (ocena) printf (“Studentot dobil ocena %d.\n”, ocena);}

Пример 5.

Престапна година е секоја година што е деллива со 4, освен доколку годината е деллива со 100 но не со 400. Да се напише програма што за година внесена од тастатура, ќе отпечати информација дали годината е престапна.

Програма:

#include<stdio.h>int main () {int godina; printf ("Vnesete godina: \n");scanf ("%d",&godina);if ((godina%400==0)||((godina%4==0)&&(godina%100!= 0))) printf ("Godinata E prestapna: \n");else printf ("Godinata NE prestapna: \n");return 0; }

Задача 6.

Од тастатура се внесуваат координати на една точка во рамнина. Да се напише програма што ќе одреди од кој квадрант е внесената точка или ќе даде информација доколку се работи за точка од оските.

Програма:

#include<stdio.h>int main () {float x,y; printf ("Vnesete kootdinati x i y: \n");scanf ("%f %f",&x,&y);if(x>0) {if(y>0) printf("Tockata e od prv kvadrant.\n");else if(y<0) printf("Tockata e od cetvrti kvadrant.\n");else printf("Tockata e na pozitivniot del od x-oska.\n"); }else if(x<0) {if(y>0) printf("Tockata e od vtor kvadrant.\n");else if(y<0) printf("Tockata e od tret kvadrant.\n");else printf("Tockata e na negativniot del od x-oska.\n"); }else {if(y>0) printf("Tockata e na pozitivniot del od y-oska.\n");else if(y<0) printf("Tockata e na negativniot del od y-oska.\n");else printf("Tockata e koordinaten pochetok\n"); }return 0; }

Get Jobilize Job Search Mobile App in your pocket Now!

Get it on Google Play Download on the App Store Now




Source:  OpenStax, Вовед во програмирање. OpenStax CNX. Oct 28, 2013 Download for free at http://cnx.org/content/col11379/1.12
Google Play and the Google Play logo are trademarks of Google Inc.

Notification Switch

Would you like to follow the 'Вовед во програмирање' conversation and receive update notifications?

Ask