
- •Спеціальність: Програмування для еом та ат
- •Практичне заняття №1
- •Контрольні запитання
- •Практичне заняття №2
- •Варіанти завдання
- •Задача 2.1.
- •Задача 2.2.
- •Задача 2.3.
- •Можливi помилки при виконаннi роботи
- •Практичне заняття №3
- •Варіанти завдань
- •Практичне заняття №4
- •Контрольнi питання
- •Варіанти завдань
- •Методичнi вказiвки та можливi помилки при виконаннi роботи
- •Практичне заняття №5
- •Варіанти завдань
- •Приклад виконання одного з варiантiв роботи.
- •Можливi помилки при виконаннi роботи
- •Практичне заняття №6
- •Варіанти завдань
- •Практичне заняття №7
- •Варіанти завдання
- •Практичне заняття №8
- •Варіанти завдань
- •I фактичних годин по категорiях працiвникiв
- •I фактичних годин по категорiях працiвникiв
- •Можливi помилки при виконаннi завдання
Задача 2.1.
#include <stdio.h>
main()
{int i,j;
printf(" АМЕРИКА ВIДКРИТА У 1492 РОЦI\n");
printf("Який зараз рiк?\n");
scanf("%d",&i);
j=i-1492;
printf("\n");
printf(" З ЧАСУ ВIДКРИТТЯ АМЕРИКИ ПРОЙШЛО %d РОКIВ\n",j);
}
Задача 2.2.
#include <stdio.h>
main()
{ float i,j,s,h,*a;
puts(" ВВЕДIТЬ ДВА ЧИСЛА\n");
scanf("%f",&i);
scanf("%f",&j);
s=i+j;
h=i/j;
a=&h;
printf("СУМА ЧИСЕЛ %5.3f ,ЇХ ЧАСТКА %5.3f, ЯКА ЗНАХОДИТЬСЯ ПО \
АДРЕСУ %d\n",s,h,&a);
printf("АДРЕСОВАНЕ ЧИСЛО %5.3f",*a);
}
Задача 2.3.
Приклад програми, яка працює з адресами та покажчиками.
#include <stdio.h>
main()
{ float pl,fact,proc;
int n;
char tn[5];
scanf("%s",tn);
puts("-------------------------------------");
puts("|# п/п|табельний| план | факт | % |");
puts("| | номер | | | |");
puts("-------------------------------------");
n=1;
pl=234;
fact=220;
proc=fact/pl*100;
printf("| %d |%5s |%5.2f|%5.2f|%5.2f|",n,tn,pl,fact,proc);
}
Можливi помилки при виконаннi роботи
Вживання невiдповiдних форматiв у операторах вводу-виводу. Правильнi формати:
%f - для дiйсних чисал (float)
%d - для цiлих чисел (int)
%s - для символьних змiнних (char)
Вживання формату %f без уточнення кiлькостi знакiв пiсля коми. Хоча помилкова ситуацiя не виникає, число виводиться в формi, незручнiй для читання i неприйнятнiй для завдань економiчного характеру. Рекомендований спосiб виводу - наприклад, %5.2f.
Вживання в операторi scanf спецiальних знакiв, наприклад \n.
scanf("%f\n",&a);
призводить до того, що машина очiкує вводу двох чисел.
Вживання оператора = для присвоєння значення символьнiй змiннiй. З цiєю метою слiд вживати функцiю strcpy, прототип якої мiститься в string.h.
Практичне заняття №3
Мета завдання - ознайомитися з умовними операторами та операторами циклу в мовi Сi.
Нижче приведенi фрагменти програм, якi мiстять умовнi оператори та оператори циклу:
1. if (h[i]>m)
{m=h[i];nm=i;}
2. return(x>0?1:x?-1:0);
3. if (x>0) m=1; else m=-1;
4. switch(i)
{case 1:puts("сiчень");break;
case 2:puts("лютий");break;
...
default:puts("помилка");
}
5. for (i=0;i<6;i++)
scanf ("%d",&k[i]);
6. for(i=0;i<10;printf("%d ",*(k+i)),i++)
7. do {is=0;
for(i=0;i<=n;i++)
if(a[i-1]>a[i])
{c=a[i-1];a[i-1]=a[i];a[i]=c;is=1;}
}
while(is);
8. while(a>e) a\=2;
Контрольнi питання
Логiчнi операцiї. Операнди логiчних операцiй. Використання виразiв числового типу в ролi умов.
Помiченi оператори. Оператор безумовного переходу goto.
Умовний оператор if.
Тернарна операцiя ?
Оператор switch. Оптимiзацiя оператора.
Оператори циклу do, while, for. Способи пiдвищення гнучкостi оператора for.
Оператор переривання циклу break та переходу на наступний крок циклу continue.