Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
экзамен прога.docx
Скачиваний:
1
Добавлен:
01.07.2025
Размер:
46.27 Кб
Скачать

Int _tmain(int argc, _tchar* argv[])

{

int a[10000], n;

cin >> n;

srand ( time (0));

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

{

a[i] = rand () % 100; // числа от 0 до 99

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

}

cout << endl;

for (int k=1; k<n; k++) // k-проходы, от начала до конца

for ( int i=0; i < n-1; i++)

if (a[i] > a[i+1])

swap (a[i], a[i+1]); // меняем местами

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

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

system ("pause");

return 0;

}

7)Дано натуральное число n. Напечатать все его делители и посчитать их.

#include "stdafx.h"

#include <iostream>

#include <cmath>

using namespace std;

Int _tmain(int argc, _tchar* argv[])

{

int n;

cin >> n; // ввод числа n

int kol = 0;

for (int d = 1; d <= n; d++)

if ( n % d == 0)

kol++,

cout << d << " ";

cout << endl;

cout << "kol = " << kol << endl;

system ("pause");

return 0;

}

8) Посчитать сколько слов в тексте.

#include "stdafx.h"

#include <iostream>

#include <cmath>

#include <cstdlib>

#include <cstring>

using namespace std;

Int _tmain(int argc, _tchar* argv[])

{

char s[1000];

cin.getline (s,1000);

int n = strlen(s);

int k = 0;

if (s[0] != ' ' )

k = 1;

for (int i=1; i<n; i++)

if (s[i] != ' ' && s[i-1] == ' ')

k++;

cout << k;

cout << endl;

system ("pause");

return 0;

}

9)Написать программу с 3-мя функциями: 1.Заполняет массив случайными числами ( кол-во от 10 до 20) и распечатывает их. 2.Ищет самое большое число в этом массиве. Главная функция должна создать 5 случайных массивов, каждый распечатать.

#include "stdafx.h"

#include <iostream>

#include <cstdlib>

#include <time.h>

#include <cmath>

using namespace std;

int FillPrint (int*a);

int Max (int a[], int n);

Int _tmain(int argc, _tchar* argv[])

{

int a[10000];

srand (time (0));

for (int i=0; i<5; i++) // будем строить 5 массивов

{

int n = FillPrint (a); // заполнить и напечатать массив

cout << Max(a,n) << endl; // найти и напечатать Max

}

system("pause");

return 0;

}

int FillPrint (int * a)

{

int n = 10 + rand() % 10; // сколько будет элементов в массиве

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

{

a[i] = rand ()% 100;

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

}

system("pause");

return n ; // возврaщаем кол-во

}

int Max (int a[], int n)

{

int max = 0;

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

if ( a[i] > max ) max = a[i];

system("pause");

return max;

}

1)Напечатать слова, каждое слово перевернуть в обратном порядке букв

// последовательно обрабатываем слова - выделяем/находим

// найти начало

// если не нашли - выход

// запомнить начало слова

// найти конец слова

// запомнить конец слова

// печатать слово в обратном порядке букв

#include "stdafx.h"

#include <iostream>

#include <cmath>

#include <cstring>

using namespace std;

Int _tmain(int argc, _tchar* argv[])

{

char s[1000];

cin. getline (s, 1000);

int n = strlen (s);

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

{

for ( ; s[i] == ' '; i++)

;

if (i >= n)

break;

int begin=i;

for ( ; i < n && s[i] != ' '; i++)

;

for (int j=i-1; j >= begin; j--)

cout << s[j];

cout << " " ;

}

system ("pause");

return 0;

}

2)Транспонировать матрицу

#include "stdafx.h"

#include <iostream>

#include <cmath>

#include <iomanip>

using namespace std;

Int _tmain(int argc, _tchar* argv[])

{

const int N=100;

int a[N][N];

int n;

cin >> n;

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

for (int j=0; j<n; j++)

a[i][j] = rand () % 100;

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

{

for (int j=0; j<n; j++)

cout << setw(3) << a[i][j] << " ";

cout << endl;

}

for (int i=1; i<n; i++)

for (int j=0; j<n; j++)

swap ( a[i][j], a[j][i]);

cout << endl;

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

{

for (int j=0; j<n; j++)

cout << setw(3) << a[i][j] << " ";

cout << endl;

}

system("pause");

return 0;

}