
- •Int main()
- •Int main()
- •Void flash(int**mas,int n){
- •Int main(){
- •Int main(){
- •Int main()
- •Int main()
- •Int main()
- •Яким чином можна вивести інформацію
- •Void flash(int**mas,int n){
- •Int main(){
- •Int main()
- •Void flash(int**mas,int n){
- •Int main(){
- •Int main()
- •Int main()
- •Void flash(int**mas,int n){
- •Int main(){
- •Int main()
- •Int main()
- •Int main()
- •Void flash(int**mas,int n)
- •Int main()
- •Int main()
- •Int main(){
- •Int main()
- •Int main(){
- •Int main()
- •Void flash(int**mas,int n)
- •Int main()
- •Int main()
- •Int main(){
- •Int main(){
- •Int main()
- •Int main()
- •Int main()
- •Int main(){
- •Int main()
- •Int main(){
- •Void flash(int**mas,int n)
- •Int main()
- •Void flash(int**mas,int n)
- •Int main()
- •Int main()
- •Оператори циклу
- •Int main(){
- •Int main()
- •Базові типи даних для пк на базі платформи Intel
- •Int main(){
- •Int main()
- •Void flash(int**mas,int n)
- •Int main()
- •Int main()
- •Int main(){
- •Int main()
- •Які існують види умовного оператора та чим вони відрізняються?
- •If (условие)
- •3. Оператор do...While
- •Int main(){
- •Int main()
- •Void flash(int**mas,int n)
- •Int main()
- •Int main()
- •Void flash(int**mas,int n)
- •Int main()
- •Int main()
- •Void flash(int**mas,int n)
- •Int main()
- •Int main()
- •Int main(){
- •Int main()
Завдання №1
Які існують види умовного оператора та чим вони відрізняються?
if (условие)
{блок 1 из одного или более операторов}
else
{блок 2 из одного или более операторов}
Если условие верно, то выполняется блок 1 из одного или более операторов, а если не верно, то блок 2.
Цикл while - цикл с неизвестным числом повторений
while (условие)
{блок из одного или нескольких операторов}
Если условие истинно (принимает не нулевое значение), то выполняется блок из одного или нескольких операторов и происходит возврат на проверку условия. Если условие ложно, происходит выход из цикла. Условие может быть составлено из нескольких выражений, с использованием || (логическое сложение "или") и &&(логическое умножение "и")
3. Оператор do...while
do...while - это цикл с постусловием.
Цикл do ... while - цикл с неизвестным числом повторений. В отличие от цикла while условие проверяется в конце цикла. Поэтому тело цикла выполняется хотя бы один раз
do
{блок из одного или нескольких операторов}
while (условие)
Оператор switch предназначен для организации выбора из множества различных вариантов. Формат оператора следующий:
switch ( выражение ) { [объявление] : [ case константное-выражение1]: [ список-операторов1] [ case константное-выражение2]: [ список-операторов2] : : [ default: [ список операторов ]] }
2. Написати шаблонну функцію, яка повертає суму головної діагоналі. Написати програму, яка ілюструє роботу цієї функції.
#include <iostream>
using namespace std;
void flash(int**mas,int n){
int long pr=1;
for(int i=0;i<n;i++)
pr*=mas[i][i];
cout<<"Произведение элементов главной диагонали: "<<pr<<endl;
}
int main(){
setlocale(0,"");
cout<<"Размерность: ";
int n;
cin>>n;
int** mas=new int*[n];
mas[0]=new int[n*n];
for(int i=0;i<n;i++)
mas[i]=mas[0]+i*n;
cout<<"Изначальный массив:"<<endl;
for(int i=0;i<n;i++){
for(int j=0;j<n;j++){
mas[i][j]=rand()%200;
cout<<mas[i][j]<<'\t';
}
cout<<endl;
}
flash(mas,n);
system("pause");
return 0;
}
3.
Обчислити
де
a=-0,5;
b=1,7;
t=0,44.
#include <iostream>
#include <math.h>
using namespace std;
Int main()
{
double a=-0.5;
double b=1.7;
double t=0.44;
double y=exp(-b*t)*sin(a*t+b)-sqrt(abs(b*t+a));
double s=b*sin(a*pow(t,2)*cos(2*t));
cout<<"Y="<<y<<'\t'<<"S="<<s<<'\t';
system("PAUSE");
return 0;
}
Завдання №2
Напишіть програму сортування масиву по правилу зростання з використанням покажчиків.
#include <iostream>
#include <time.h>
using namespace std;
void Sort(int *&, int);
Int main()
{
setlocale(0,"");
srand(time(NULL));
int n;
cout<<"Введите количество элементов в массив: ";
cin>>n;
int * mas;
mas = new int [n];
// Zapolnenie
for (int i = 0 ; i< n; i++)
*(mas+i) = rand()%50-25;
cout<<"\nНачальный массив:\n";
for (int i = 0 ; i < n; i++)
cout<<*(mas+i)<<"\t";
// Sortirovka
cout<<endl;
Sort(mas,n);
delete[]mas;
system("pause");
return 0;
}
void Sort(int *&mas, int n)
{
cout<<"\nОтсортированный массив\n";
//Сортировка
for (int i = 0 ; i < n-1; i++)
for (int j = 0 ; j < n-1-i; j++)
{
if (*(mas+j) > *(mas+1+j) )
{
int t = *(mas+j);
*(mas+j) = *(mas+j+1);
*(mas+j+1) = t;
}
}
for (int i = 0 ; i < n ;i++)
cout<<*(mas+i)<<"\t";
}
2. Як запрограмувати функції зі змінною кількістю параметрів?
Создать функцию с неизвестным заранее числом аргументов. В объявлении и определении такой функции переменное число аргументов задается многоточием в конце списка формальных параметров или списка типов аргументов
Для того, чтобы получить доступ ко всем параметрам, принимаемых функцией, нужно знать имя и тип хотя бы одного параметра, теперь можно взять его адресс и через адресс одного обращяться к остальным параметрам.
#include <iostream>
#include <conio.h>
using namespace std;
void Fun(int a,...);
void main()
{
Fun(2,6,8,7,3);
getch();
}
void Fun(int a,...)
{
int *p=&a;
for(0;*p;++p)
cout<<*p<<' ';
}
Створити функцію знаходження добутку трикутної матриці, що знаходиться нижче головної діагоналі у квадратній матриці, та сортування ії другого стовпця.
#include <iostream>
using namespace std;
Void flash(int**mas,int n){
/////////////// произведение элементов ниже гл диагонали
int Pro=1;
for(int i=0;i<n;i++)
{
for(int j=0;j<i;j++)
{
Pro=Pro*mas[i][j];
}
}
cout<<"proizv ="<<Pro<<'\n';
//sortirobka 2ogo stolbca
int t;
for( int i=0;i<n-1;i++,cout<<endl)
{
for( int j=0;j<n-1-j;j++)
{
if(mas[j][1]>mas[j+1][1])
{
t=mas[j][1];
mas[j][1]=mas[j+1][1];
mas[j+1][1]=t;
}
}
}
for (int i=0;i<n;i++,cout<<endl)
{
for ( int j=0;j<n;j++)
{
cout<<mas[i][j]<<'\t';
}
}
}
//////////////////////
Int main(){
setlocale(0,"");
cout<<"Размерность: ";
int n;
cin>>n;
int** mas=new int*[n];
mas[0]=new int[n*n];
for(int i=0;i<n;i++)
mas[i]=mas[0]+i*n;
cout<<"Изначальный массив:"<<endl;
for(int i=0;i<n;i++){
for(int j=0;j<n;j++){
mas[i][j]=rand()%200;
cout<<mas[i][j]<<'\t';
}
cout<<endl;
}
flash(mas,n);
system("pause");
return 0;
}
Завдання №3
1.Які типи даних вам відомі?
Базові типи даних для ПК на базі платформи Intel
-
Тип
Розмір, байт
Значення
bool
1
true (1) або false(0)
unsigned short int
2
від 0 до 65 535
short int
2
від –32 768 до 32 767
unsigned long int
4
від 0 до 4 294 967 295
long int
4
від –2 147 483 648 до 2 147 483 647
int (16 розрядів)
2
від –32 768 до 32 767
int (32 розряда)
4
від –2 147 483 648 до 2 147 483 647
unsigned int (16 розрядів)
2
від 0 до 65 535
unsigned int (32 розряда)
4
від 0 до 4 294 967 295
char
1
від 0 до 256
float
4
від 1.2е-38 до 3.4е38
double
8
від 2.2е-308 до 1.8е308
long double
10
від 3.4е-4932 до 3.4е 4932
void
2 або 4
-
2. Задана структура з ім’ям именем student, яка містить два поля: П.І.Б.; бал.
Необхідно реалізувати функцію сортування масиву структур за зростанням бала. Написати програму, яка ілюструє роботу цієї функції.
#include <iostream>
using namespace std;
struct student{
char imia[100];
int bal;
};
void nat(int n, student* mas){
for(int i=0;i<n-1;i++)
for(int j=0;j<n-1-i;j++)
if(mas[j].bal<mas[j+1].bal){
student c=mas[j];
mas[j]=mas[j+1];
mas[j+1]=c;
}
for(int i=0;i<n;i++){
cout<<"imia"<<i+1<<' '<<mas[i].imia<<endl;
cout<<"bal"<<i+1<<' '<<mas[i].bal<<endl;
}
}