1 семестр / 3 практика
.docxЦель работы: Овладение практическими навыками разработки и реализации циклических алгоритмов на языке Си.
Задача 1. Вывести на экран числа последовательности 2 4 6 8 10 12 14 16 … 100.
начало
#include "iostream"
#include "conio.h"
void main ()
{
a=1001;a<=1000000;a+=1
int a;
for (int a=2; a<=100; a+=2)
printf("% i \n", a);
getch ();
}
Вывод
а
Рисунок
1 – Пример работы программы «Задача 1»
Задача 2. Вывести на экран числа последовательности 1 2 4 8 16 32 … 100.
#include "iostream"
#include "conio.h"
void main ()
{
int a;
for ( a=1; a<=100; a*=2)
printf("%i \n", a);
printf("100");
getch ();
}
Рисунок
2 – Пример работы программы «Задача 2»
Задача 3. Написать программу, которая выводит на экран все високосные года с 1950 по текущий год. Реализовать программу арифметическим и итерационным циклом.
1 способ (ариф.) #include "iostream"
#include "conio.h"
void main ()
{
int a, b;
for (a=1948; a<=2018; a+=4)
printf("%i \n", a);
getch ();
}
начало
2способ (интерац.) #include "iostream"
a+=4; вывод а
#include "conio.h"
void main ()
{
a<=2015
int a = 1948;
do
конец
{
a+=4; printf("%i \n", a);
}
while (a<=2015);
getch ();
}
Рисунок 3 – Пример работы программы «Задача 3»
Задача 4. Дано целое натуральное число N. Вычислить 2N
#include "iostream"
#include "conio.h"
#include "math.h"
void main ()
{
float a, n;
setlocale(LC_ALL, "rus");
printf("Ведите n ");
scanf("%f", &n);
a=pow(2,n);
printf("%f ", a);
getch ();
}
Рисунок 4 – Пример работы программы «Задача 4»
Задача 5. Для введённого пользователем с клавиатуры натурального числа посчитайте сумму всех его цифр (заранее не известно, сколько цифр будет в числе).
начало
#include "iostream"
#include "conio.h"
void main()
b=a%10;
a=a-b;
a=a/10;
end=end+b
{
int a,b,end=0;
setlocale(LC_ALL, "rus" );
printf("Введите число ");
scanf("%i",&a);
do
{
а=0?
b=a%10;
a=a-b;
a=a/10;
Вывод итога
end=end+b;
} while(a!=0);
конец
printf("Результат:%i",end);
getch();
}
Рисунок 5 – Пример работы программы «Задача 5»
Задача 6. В городе N проезд в трамвае осуществляется по бумажным отрывным билетам. Каждую неделю трамвайное депо заказывает в местной типографии рулон билетов с номерами от 000001 до 999999. «Счастливым» считается билетик у которого сумма первых трёх цифр номера равна сумме последних трёх цифр, как, например, в билетах с номерами 003102 или 567576. Трамвайное депо решило подарить сувенир обладателю каждого счастливого билета и теперь раздумывает, как много сувениров потребуется. С помощью программы подсчитайте сколько счастливых билетов в одном рулоне?
#include "iostream"
#include "conio.h"
void main()
{
int sum=0, a,b,c,d,e,f,g,h,i;
for(int a=1001; a<=1000000; a+=1)
{
b=a%10;
c=a%100/10;
d=a%1000/100;
e=a%10000/1000;
f=a%100000/10000;
g=a%1000000/100000;
h=b+c+d;//1половина
i=e+f+g;//2половина
if ( h==i )
{
sum++;
}
}
printf("%i ", sum);
getch ();
}
Рисунок 6 – Пример работы программы «Задача 6»
Задача 7. Электронные часы показывают время в формате от 00:00 до 23:59. Подсчитать сколько раз за сутки случается так, что слева от двоеточия показывается симметричная комбинация для той, что справа от двоеточия (например, 02:20, 11:11 или 15:51).
#include "iostream"
#include "conio.h"
void main()
{
int hr,min, a=0;
for(int hr=1;hr<=24;hr++)
{
for(int min=0; min<=59; min++)
{
if(hr/10%10==min%10 & hr%10==min/10%10)
{
a++;
}
}
}
printf("%i ", a);
getch ();
}
Рисунок 7 – Пример работы программы «Задача 7»
Индивидуальное задание. Дано вещественное число A и натуральные числа от 1 до N (> 0). Найти разности квадратов A и натуральных чисел N .
#include "iostream"
#include "conio.h"
void main()
{
float a,n,c,d=0,v;
printf("A=");
scanf("%f", &a);
printf("N=");
scanf("%f", &n);
for(c=1; c<=n; c++)
printf("%f ", (pow (a,2))-c);
getch ();
}
Рисунок 8 – Пример работы программы «Индивидуальная задача»
Вывод: получил навыки разработки и реализации циклических алгоритмов на языке Си.