Смекни!
smekni.com

Програмний продукт Pacific З Compiler (стр. 5 из 8)

else//В іншому випадку

{

A[i][0]=s; //Заданому елементу масива А присвоюємо значення s

}

cout<<A[i][j]<<" ";//Виводимо елементи масива через пробіл

}

cout<<"&bsol;n";//Переводимо курсор на новий рядок

k+=1; //До значення перемінної k додаємо одиницю

}

cout<<"&bsol;n";//Переводимо курсор на новий рядок

}//Кінець функції main()

2.17Вивід матриці В(М;N)

Програма Proga17.срр призначена для виводу матриці В(M;N), елементами якої є випадкові числа, рівномірно розташовані в інтервалі (-5;7). Переставляючи її рядки та стовпці, домогтися того, щоб найбільший елемент матриці виявився в правому нижньому куті

Вхідні дані: масив чисел В (тип int)

параметри М,N (тип int)

Вихідні дані: матриця В певного вигляду

#include<iostream.h> //Підключаємо бібліотеки iostream.h,

#include<math.h> //math.h

#include<stdlib.h>// та stdlib.h

void main() //оголошуємо головну функцію main()

{

int B[100][100]; //Оголошуємо масив В типу int, та перемінні

int i,a,b,N,M,W,x,y,j, max=-5;// i,a,b,N,M,W,x,y,j, max=-5 типу

//int. Перемінній max присвоюємо початкове значення -5

cout<<"Скількі рядків буде у вашій матриці? "; //Даємо запит

cin>>M; //Вводимо кількість рядків матриці

cout<<" Скількі стовбців буде у вашій матриці? "; //Даємо запит

cin>>N; //Вводимо кількість стовбців матриці

cout<<"Ось ваша матриця: "<<"&bsol;n&bsol;n"; //Виводимо повідомлення

for(i=0; i<M; i++) //Задаємо цикл для проходження значень

{ //параметра і від 0 до М кроком 1

for(j=0;j<N;j++) //Задаємо цикл для проходження значень

{ //параметра j від 0 до N кроком 1

B[i][j]=(rand()%13)-5; //Заповнюємо масив В випадковими

cout<<B[i][j]<<" "; //числами в інтервалі (-5;7)

}

cout<<"&bsol;n"; //Переводимо курсор на новий рядок

}

for(i=0;i<M;i++) //Задаємо цикл для проходження значень

{ //параметра і від 0 до М кроком 1

for(j=0;j<N;j++)//Задаємо цикл для проходження значень

//параметра j від 0 до N кроком 1

if(B[i][j]>max) //Умова: якщо елемент масиву В >max,

{

max=B[i][j];//перемінній max присвоюємо значення елементаB[i][j]

x=i;//перемінній x присвоюємо значення параметра і

y=j;//перемінній y присвоюємо значення параметра j

}

}

cout<<"&bsol;n"<<"max. елемент="<<max<<"&bsol;n&bsol;n";//Виводимо найбільший елемент

//матриці

for(i=0;i<M;i++) //Задаємо цикл для проходження значень

{ //параметра і від 0 до М кроком 1

a=B[i][y]; //перемінній а присвоюємо значення B[i][y]

B[i][y]=B[i][N-1];//Змінюємо значення елементів в масиві В

B[i][N-1]=a; //Значенню елемента матриці В присвоюємо

} //значення перемінної а

for(j=0;j<N;j++) //Задаємо цикл для проходження значень

{ //параметра j від 0 до N кроком 1

b=B[x][j]; //перемінній b присвоюємо значення B[x][j]

B[x][j]=B[M-1][j]; //Змінюємо значення елементів в масиві В

B[M-1][j]=b; //Значенню елемента матриці В присвоюємо

}//значення перемінної b

cout<<"Змінена матриця:"<<"&bsol;n&bsol;n";//Виводимо повідомлення

for(i=0;i<M;i++) //Задаємо цикл для проходження значень

{ //параметра і від 0 до М кроком 1

for(j=0;j<N;j++) //Задаємо цикл для проходження значень

{//параметра j від 0 до N кроком 1

cout<<B[i][j]<<" "; //Виводимо елементи матриці В

}

cout<<"&bsol;n"; //Переводимо курсор на новий рядок

}

cout<<"&bsol;n"<<"Для виходу введіть EXIT:"<<"&bsol;n"; //Даємо запит

cin>>W; //Вводимо зайву перемінну W для затримки екрану

} //Кінець функції main()

2.18 Знаходження найбільшого з від’ємних чисел матриці

Програма Proga18.срр призначена для знаходження найбільшого з від’ємних чисел матриці А(85), рівномірно розподілених в інтервалі [-20;10]

Вхідні дані: масив чисел А (тип int)

Вихідні дані: параметр min (тип int)

#include<iostream.h> //Підключаємо бібліотеки iostream.h,

#include<stdlib.h> //та stdlib.h

void main() //оголошуємо головну функцію main()

{

int A[85], i,min=10, s,W;//Оголошуємо масив цілих чисел А, та

//перемінні і,s,W,min типу int

s=0; //Перемінній s присвоюємо початкове значення 0

for(i=0; i<85; i++) //Задаємо цикл для проходження значень

{ //параметра і від 0 до 85 кроком 1

A[i]=(rand()%31)-20;//Заповнюємо матрицю А випадковими числами

cout<<A[i]<<" "; //Виводимо елементи матриці А на екран

}

cout<<'&bsol;n'; //Переводимо курсор на новий рядок

for(i=0;i<85;i++) //Задаємо цикл для проходження значень

{ //параметра і від 0 до 85 кроком 1

if(A[i]<0) //Умова: якщо елемент матриці А менше 0,

{ if (A[i]<min) min=A[i];} //та якщо він менше значення min,

} //перемінній min присвоюємо значення і-го елемента матриці А

cout<<"&bsol;n"<<"max="<<min<<"&bsol;n"; //Виводимо відповідь

cout<<"&bsol;n"<<"Для виходу введіть EXIT:"<<"&bsol;n"; //Даємо запит

cin>>W; //Вводимо зайву перемінну W для затримки екрану

} //Кінець функції main()

2.19Знаходження найбільшого значення напруги в електромережі

Програма Proga19.срр призначена для знаходження найбільшого значення напруги в електромережі в інтервалі (20,6)годин та часу, якщо протягом доби кожну годину були проведені 24 заміра напруги

Вхідні дані: масив чисел А (тип int)

Вихідні дані: параметр mахМ (тип int)

#include<iostream.h> //Підключаємо бібліотеки iostream.h,

#include<math.h>//math.h та

#include<stdlib.h> //stdlib.h

void main() //оголошуємо головну функцію main()

{

int maxN,i,maxM,N,M,W; //Оголошуємо перемінні maxN,i,maxM,N,M,W

int A[23]={0}; // типу int, та масив цілих чисел А

for(i=0;i<=23;i++) //Заповнюємо масив А випадковими числами

A[i]=(rand()%450)-200; //в інтервалі (200;250)

maxN=200; //Переміннії maxN присвоюємо початкове значення 200

for(i=0;i<6;i++) //Задаємо цикл

if(A[i]>=maxN) //Умова: якщо елемент масива А > або = maxN,

{

maxN=A[i]; //перемінній maxN присвоюємо значення і-го елементу А

N=(i+1); //Перемінній N присвоюємо значення (і+1)

}

for(i=19;i<24;i++) //Задаємо цикл

if(A[i]>=maxM) //Умова: якщо елемент масива А > або = maxМ,

{

maxM=A[i]; //перемінній maxМ присвоюємо значення і-го елементу А

M=(i+1); //Перемінній М присвоюємо значення (і+1)

}

if(maxN>=maxM)//Умова: якщо значення maxN > значення maxN, виводимо

cout<<"Напруга="<<maxN<<" вольт о "<<N<<" годині ранку"<<"&bsol;n";

else cout<<"Напруга="<<maxM<<"вольт о"<<M<<"годині вечора"<<"&bsol;n";

cout<<"&bsol;n"<<"Для виходу введіть EXIT:"<<"&bsol;n"; //Даємо запит

cin>>W; //Вводимо зайву перемінну W для затримки екрану

} //Кінець функції main()


2.20 Знаходження першого члену послідовності

Програма Proga20.срр призначена для знаходження першого члену послідовності

, n = 1, 2, … ,який не належить відрізку [А,В], якщо задані числа А<0 та B>0 типу double

Вхідні дані: параметри А та В (тип double)

Вихідні дані: параметр і (тип int)

#include<iostream.h> //Підключаємо бібліотеки iostream.h

#include<math.h>//та math.h

void main()//оголошуємо головну функцію main()

{

int N=100,i;//Оголошуємо перемінні N=100,і цілого типу

double S,a,A,B,W; //та перемінні S,a,A,B,W типу double

cout<<"ВведітьA<0: ";//Вводимо запит

cin>>A;//вводимо число А<0

cout<<"Введіть B>0: ";//Вводимо запит

cin>>B;//вводимо число B>0

S=0;//Перемінній s присвоюємо початкове значення 0

for(i=1;i<=N;i++)//Задаємо цикл для проходження значень

{ //параметра і від 0 до N кроком 1

S+=(pow(-1,i))*((sqrt(2)+i));//Знаходимо s за вказаною формулою

a=S;//Перемінній а присвоюємо значення перемінної s

if((a<=A)||(a>=B)) //Умова: якщо значення перемінної а < або =

{//значенню перемінної А, та > або = значенню перемінної В, виводимо

cout<<i<<" член послідовності= "<<a<<" неналежитьвідрізку [A;B]"&bsol;n;

gotop;//Звертаємося до мітки р

}

else ;}//В іншому разі нічого не відбувається

p:; //Мітка р:

cout<<"&bsol;n"<<"Для виходу введіть EXIT:"<<"&bsol;n";//Даємо запит

cin>>W; //Вводимо зайву перемінну W для затримки екрану

} //Кінець функції main()

2.21 Видалення пробілів з рядка

Програма Proga21.срр призначена для стискання рядка шляхом видалення пробілів з тексту

Вхідні дані: рядок символів S (тип char)

Вихідні дані: стиснутий рядок S (тип Char)

Блок-схема до програми Proga21.срр представлена на рисунку 2.6

#include<conio.h>//Підключаємо бібліотеки conio.h

#include<stdio.h>//та stdio.h

void main() //оголошуємо головну функцію main()

{

char S[80],i; //оголошуємо символьний масив з 80 елементів та

// символьну перемінну i

printf("Введіть ваш рядок. В кінці поставте @:&bsol;n");//Вводимо рядок,

gets(S); //який закінчується на @

i=0; //Задаємо початкове значення параметра i

while((S[i]!='@'))

{

if (S[i]==' ') //Задаємо умову знаходження пробіла в рядку

printf("%*",S[i+1]); //якщо пробіл знайдений, пропускаємо його

//та виводимо наступні елементи попорядку

else printf("%c",S[i]); //якщо пробіла немає, виводимо даний // елемент на свойому місці

i+=1; //Збільшуємо лічильник на одиницю

}

printf("&bsol;n"); //Переводимо курсор на новий рядок

getch(); //Затримуємо екран

}//Кінець функції main()


Ні Так


Рисунок 2.6 Блок-схема алгоритму до програми Proga21.срр


2.22Знаходження кількості вказаних символів

Програма Proga22.срр призначена для знаходження кількості вказаних символів в заданому рядку

Вхідні дані: рядок символів STRING (тип char)

вказаний символ N (типchar)

Вихідні дані: кількість вказаних символів g(тип int)

#include<iostream.h> //Підключаємо бібліотеку iostream.h

char kol(char S[100],char a) //Оголошуємо функцию kol,яка по заданому

{//рядку S та вказаному символу “а”

int h,result=0;// знаходить кількість символів “а” , які

//зустрічаються в рядку S

for (h=0;S[h]+='&bsol;0';h++)

{if (S[h]==a) result+=1;}

return result;