- •Розділ 1.Технологія створення програм Етапи рішення прикладних задач з використанням комп'ютерів
- •Кроки роботи з програмою
- •Короткий огляд мов програмування
- •Новый раздел – с новой страницы!
- •Створення програмного проекту
- •Засоби і методика відладки програм
- •Програмна реалізація алгоритмів лінійної структури
- •Програмна реалізація алгоритмів розгалужених структур Програмна реалізація алгоритмів циклічних структур
Програмна реалізація алгоритмів розгалужених структур Програмна реалізація алгоритмів циклічних структур
Циклом називають послідовність дій(операторів), яку записують у тексті програми один раз але вона може виконуватися понад один раз.
Надрукувати "стовпчиком" всі цілі числа від а до b (значення а і b вводяться з клавіатури; b >= а).
Вхідні дані:
а (будь-яке число). Дійсне число;
b (будь-яке число). Дійсне число.
Вихідні дані: цілі числа від а до b.
Розробка алгоритму.
Вводимо числа a і b й за допомогою циклу виводимо числа від а до b "стовпчиком".
Текст програми.
#include <iostream>
#include <windows.h>
#include <iomanip>
using namespace std;
void main()
{
int a, b;
cin>>a>>b;
for(;a<=b;a++)
{
cout<<a<<endl;
}
}
Результат:
1
9
1
2
3
4
5
6
7
8
9
Для продолжения нажмите любую клавишу . . .
Знайти добуток всіх цілих чисел від а до b (значення а і b вводяться з клавіатури; b > а).
Вхідні дані:
а (будь-яке число). Дійсне число;
b (будь-яке число). Дійсне число.
Вихідні дані: добуток всіх цілих чисел від а до b.
Розробка алгоритму.
Вводимо числа a і b й за допомогою циклу виводимо добуток всіх цілих чисел від а до b.
Текст програми.
#include <iostream>
#include <windows.h>
#include <iomanip>
using namespace std;
void main()
{
int a, b,dob=1;
cin>>a>>b;
for(;a<=b;a++)
{
dob=dob*a;
}
cout<<dob<<endl;
}
Результат:
5
7
210
Для продолжения нажмите любую клавишу . . .
Обчислити і вивести на екран у вигляді таблиці значення функції F на інтервалі від Хнач. до Хкон. з кроком dX.
Вхідні дані:
а (будь-яке число). Дійсне число;
b (будь-яке число). Дійсне число.
с (будь-яке число). Дійсне число.
х нач. (будь-яке число). Дійсне число.
х кон. (будь-яке число). Дійсне число.
dX (крок) .Дійсне число.
Вихідні дані: значення функції F.
Розробка алгоритму.
Вводимо числа a, b, с, х нач., х кон., dX за певного значення х виконується одне з рівнянь які ми задаємо в умовному операторі. Результат виводиться на екран.
Отформатируйте текст программы: выделите ее, и щелкните на стиль с именем «_Прог» в верхей правой части окна.
Текст програми.
#include <iostream>
#include <windows.h>
#include <iomanip>
using namespace std;
void main()
{
int x_nach,x_kon,dx,a,b,c,x;
cin>>x_nach>>x_kon>>dx>>a>>b>>c;
while(x_nach<=x_kon)
{
x=x_nach;
if(x<5&&c!=0) cout<<(-a*x*x-b)<<endl;
else if(x>5&&c==0) cout<<(x-a)/x<<endl;
else cout<<-x/c<<endl;
x_nach=x_nach+dx;
}
}
Всетаки вставили нерациональный вариант!!!!!!
Результат:
1
6
3
2
8
9
-10
-40
Для продолжения нажмите любую клавишу . . .
4.
Обчислити суму
Вихідні дані: сума дробів.
Розробка алгоритму.
За допомогою циклу формуються дроби і рахується їх сума.
Отформатируйте текст программы
Текст програми.
#include <iostream>
#include <windows.h>
#include <iomanip>
using namespace std;
void main()
{
SetConsoleCP(1251);
SetConsoleOutputCP(1251);
double sum=0;
for(int i=2;i<=10;i++)
{
sum=sum+(float)i/(i+1);
cout<<(float)i/(i+1)<<" "<<endl;
}
cout<<sum<<endl;
}
Результат:
0.666667
0.75
0.8
0.833333
0.857143
0.875
0.888889
0.9
0.909091
7.48012
Для продолжения нажмите любую клавишу . . .
Для пользователя не программиста совершенно непонятно, какое из значений является результатом.
5. Задано натуральне число n і дійсні числа а1, а2..., аn. Визначити середнє арифметичне дійсних чисел.
Вхідні дані:
n (будь-яке число). Дійсне число;
а1, а2..., аn (будь-яке числа). Натуральні числа.
Вихідні дані: середнє арифметичне дійсних чисел.
Розробка алгоритму.
Вводимо к-сть чисел, після чого за допомогою циклу вводимо дійсні числа, а потім виводимо їх середнє арифметичне.
Текст програми.
#include <iostream>
#include <windows.h>
#include <iomanip>
using namespace std;
void main()
{
double n,a=0,sum=0;
int k=0;
cin>>n;
for(int i=1;i<=n;i++)
{
cin>>a;
sum=sum+a;
k=k++;
}
cout<<sum/k<<endl;
}
Результат:
3
2
9
5
5.33333
Для продолжения нажмите любую клавишу . . .
6. Дана непорожня послідовність додатних цілих чисел a1, а2,..., що закінчується нулем. Отримати послідовність a1, a1*а2, a1*а2*а3,..., 0.
Вхідні дані:
а (додатнє ціле число);
Вихідні дані: послідовність a1, a1*а2, a1*а2*а3,..., 0.
Розробка алгоритму.
Вводимо додатні цілі числа до тих пір доки не введемо нуль.
Текст програми.
#include <iostream>
#include <windows.h>
#include <iomanip>
using namespace std;
void main()
{
int a=1,k=1;
while(a!=0)
{
cin>>a;
k=k*a;
cout<<k<<endl;
}
}
Результат:
1
1
2
2
3
6
4
24
5
120
6
720
7
5040
8
40320
0
0
Для продолжения нажмите любую клавишу . . .
Опять в выходных данных трудно разобраться. Выводите данные в наглядной форме, может и самому станет более понятно!!!
7. Одноклітинна амеба кожні 3 години ділиться на 2 клітки. Визначити, скільки кліток буде через 3, 6, 9, ..., 24 години, якщо спочатку була одна амеба.
Вхідні дані:
початкова к-сть клітин (додатнє ціле число);
Вихідні дані: вихідна к-сть клітин (додатнє ціле число).
Розробка алгоритму.
Вводимо початкову к-сть клітин потім за допомогою циклу вираховуємо кінцеву к-сть клітин яку й виводим.
Програмна реалізація функцій користувача
Обробка одновимірних масивів
Обробка двовимірних масивів
Список використаної літератури
Ван Тассел Д. «Стиль, разработка, эффективность, отладка испытание программ», М. «Мир», 1981г., - 788 с.
“Программное обеспечение персональных компьютеров” под ред. Брусенцова Н.П. и Шаумана А.М. Изд. Московского Университета. 1990 г., - 466 с.
