Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Отчёт.docx
Скачиваний:
24
Добавлен:
09.06.2015
Размер:
1.81 Mб
Скачать

Задача 5.5

Дано число к и матрица размера 4х9. После строки матрицы с номером к вставить строку из нулей.

  1. Блок-схема.

начало

a[n][m]

k1

j=0; j<m; j++

+ -

i=0; i<k1-1; i++

+ -

b[i][j]=a[i][j]

b[k1][j]=0

i=k1; i<n; i++

+ -

b[i+1][j]=a[i][j]

a[n][m]

конец

  1. Программный код.

#include "iostream"

#include <time.h.>

using namespace std;

void main()

{

setlocale (LC_ALL, "Russian");

srand(time(NULL));

const int n=4, m=9;

int a[n][m];

int b[n+1][m];

int k1;

int i,j;

//Ввод

cout<<"Ввести индекс строки k1 ";

cin>>k1;

for(i=0;i<n;i++)

for(j=0;j<m;j++)

a[i][j]=10+rand()%90;

//Вывод исходной матрицы

for(i=0;i<n;i++)

{for(j=0;j<m;j++)

cout<<a[i][j]<<" ";

cout<<endl;}

cout<<endl;

//Решение

for(j=0;j<m;j++)

{for(i=0;i<=k1-1;i++)

b[i][j]=a[i][j];

b[k1][j]=0;

for(i=k1;i<n;i++)

b[i+1][j]=a[i][j];}

//Вывод, после добавления строки из нулей

for(i=0;i<=n;i++)

{for(j=0;j<m;j++)

cout<<b[i][j]<<" ";

cout<<endl;}

}

  1. Скриншот.

Задача 6.1

Напишите программу, которая подсчитывает стоимость телеграммы, текст которой вводится с клавиатуры.

начало

  1. Блок-схема.

cin.getline(str,50)

i, x, p, k

i=0; str[i]!=0;i++

+

x=i+1

k=x*p

Стоимость телеграммы -

конец

  1. Программный код.

#include "iostream"

#include <string>

using namespace std;

void main()

{

setlocale (0, "");

char str[255];//Ввод элементов строки

cin.getline(str,50);

int i,x;

int p;

int k;

cout<<"Ввести p"<<endl;

cin>>p;

for(i=0;str[i]!='\0';i++)//Нахождение количества элементов

{x=i+1;}

{k=x*p;}

cout<<"Стоимость телеграммы = "<<k<<endl;

}

  1. Скриншот.

Задача 6.2

Дана строка. Подсчитать количество содержащихся в ней прописных букв.

начало

  1. Блок-схема.

cin.getline(str,50)

i, x=0

i=0; str[i]!=’\0’;i++

str[i]>=’A’ && str[i]<=’Z’

+ -

x=x+1

Кол-во прописных букв -

конец

  1. Программный код.

#include "iostream"

#include <string>

using namespace std;

void main()

{

setlocale (LC_ALL, "Russian");

char str[255];//Ввод элементов строки

cin.getline(str,50);

int i,x=0;

for(i=0;str[i]!='\0';i++)//Нахождение количества элементов

{if(str[i]>='A' && str[i]<='Z') x=x+1;}

cout<<"Количество прописных букв в строке - "<<x<<endl;

}

  1. Скриншот.

Задача 6.3

Дана строка, состоящая из русских слов, разделённых пробелами (одним или несколькими). Определить количество слов, которые содержат ровно три буквы «А».

начало

  1. Блок-схема.

getline (cin,h)

i=0; i<h.size(); i++

- +

nnn=h.find(‘AAA’)!=string ::npos

+ -

nnn=nnn+1

AAA

+ -

nnn

return 0

конец

  1. Программный код.

#include "iostream"

#include <string>

using namespace std;

int main()

{setlocale (0,"");

//int S=0;

string h;

cout<<"Введите строку:";

getline (cin,h);

string::size_type nnn;

for(int i=0;i<h.size();i++)

{if(nnn = h.find('AAA') != string::npos)

nnn=nnn+1;}

cout<<nnn;

return 0;

}

  1. Скриншот.