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

Void main()

{

setlocale (LC_ALL, "Rus");

char X[300];

int i,n=0;

printf("Введите строку: \n",n);

for(i=0;(X[i]=getchar())!='\n';i++)

n++;

printf("Преобразованная строка: \n");

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

{if(X[i+1]=='=')

{putchar(X[i]);

putchar(X[i+2]);}

else

putchar(X[i]);}

printf("\n");

}

Лабораторная работа №8

Написать программу, которая определяет номер строки квадратной матрицы, сумма элементов которой максимальна. Массив заполняется пользователем с клавиатуры. Результат вывести на экран.

#include <stdio.h>

#include <iostream>

#define N 3

void vvod(int a[][N], int m, int n);

void summ(int a[][N], int m, int n);

void vivod (int a[][N], int m, int n);

Void main()

{

setlocale (LC_ALL, "Russian");

int b[N][N], m, n, A, max;

printf ("Введите количество строк:\n");

scanf ("%d", &m);

printf ("Введите количество столбцов:\n");

scanf ("%d", &n);

vvod(b, m, n);

v ivod(b, m, n);

summ (b, m, n);

}

void vvod(int a[][N], int m, int n )

{

setlocale (LC_ALL, "Russian");

int i,j;

printf ("Введите массив:\n");

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

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

scanf("%d",&a[i][j]);

}

void vivod (int a[][N], int m, int n)

{

setlocale (LC_ALL, "Russian");

int i,j;

printf("Полученная матрица:\n");

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

{

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

printf("%5d", a[i][j]);

printf("\n");

}}

void summ(int a[][N], int m, int n)

{

int i,j,sum,max,k;

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

{

sum=0;

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

{sum+=a[i][j];}

if (i==0)

max=sum;

else if (max<sum)

{max=sum;

k=i;}}

printf ("Максимальная сумма %d строки равна %d\n",(k+1), max);

}

Лабораторная № 23

1 . Написать функцию, в которой внутри будет переменная (static), сохраняющая количество раз, сколько была вызвана функция за время выполнения программы.

#include <iostream>

using namespace std;

void main(void)

{void func (int k);

setlocale(LC_ALL,"Russian");

int k, n;

printf("Введите количество раз");

scanf("%d",&n);

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

func(k);}

void func (int k)

{static int a=0;

a++;

printf("Функция вызвана %d разa\n",a);}

2. В функции одного исходного файла (1.cpp) объявить ссылку на переменную (extern) другого файла (2.cpp). Умножить ее на переменную, введенную в файле 1.cpp и вывести результат на экран.

1 .cpp

extern int A=10;

2.cpp

#include <iostream>

Void main()

{

extern int A;

int P=1, B=5;

P=A*B;

printf ("P=%d\n",P);

}

3.Имеются два файла 1.cpp и 2.cpp. В каждом из файлов ввести с клавиатуры по одной переменной. Вывести на экран переменные другого файла.

1 .cpp

#include <stdio.h>

int A;

void main(void)

{void Func (int );

int t=0;

printf(" Enter A \n");

scanf("%d",&A);

Func (t);

extern int B;

printf(" N2 = %d\n",B);}

2.cpp

#include <stdio.h>

int B;

void Func (int t)

{printf(" Enter B \n");

scanf("%d",&B);

extern int A;

printf(" N1 = %d\n",A);}

4.Написать функцию вычисления факториала (величина переменной должна быть очень большой) с учетом того, чтобы она выполнялась максимально быстро, переменная должна быть объявлена классом register.

#include <iostream>

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]