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

20)Напишите программу, которая вычисляет площадь треугольника, если известны его высота и основание (высоту и основание запросить с клавиатуры).

#include <stdio.h>

#include <stdlib.h>

#include <locale.h>

int main( void )

{

setlocale( LC_ALL, "rus" );

int nHight, bOsn;

printf( "Введите высоту: -> " );

scanf( "%i", &nHight );

printf( "Введите основание: -> " );

scanf( "%i", &bOsn );

float S = (nHight * bOsn)/(float)2;

printf( "Площадь треугольника: %f\n", S );

system( "pause" );

return(0);

}

22)Написать фрагмент программы, находящий 5 наибольших элементов массива целых чисел.

void PrintMaxElem( int *mas, int N )

{

int buf;

for( int i = 0; i < N; i++ ) // сортирую

for( int j = i; j < N; j++ )

{

if( mas[i] < mas[j] )

{

buf = mas[i];

mas[i] = mas[j];

mas[j] = buf;

}

}

if( N > 5 )

N = 5;

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

printf( "%i ", mas[i] );

}

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

// привел полный исходник программы

#include <stdio.h>

#include <stdlib.h>

#include <locale.h>

#include <string.h>

struct Book

{

char szAutor[50];

char szName[50];

int CountStr;

};

void Execute( Book *mas, int N )

{

float nSrednCena = 0;

int nCout = 0;

// сортировка

printf( "Книги:\n" );

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

{

if( mas[i].CountStr > 300 )

{

printf( "%s\n", mas[i].szName );

printf( "%s\n", mas[i].szAutor );

printf( "%i\n", mas[i].CountStr );

printf( "-----------------\n" );

}

}

system( "pause" );

}

int main( void )

{

setlocale( LC_ALL, "rus" );

// тут просто вношу данные

Book mas[3];

strcpy( mas[0].szAutor, "Шилд Г." );

strcpy( mas[0].szName, "C++" );

mas[0].CountStr = 500;

strcpy( mas[1].szAutor, "Побегайло А." );

strcpy( mas[1].szName, "Системное прораммирование в Windows" );

mas[1].CountStr = 1000;

strcpy( mas[2].szAutor, "Подбельский" );

strcpy( mas[2].szName, "Программирование на языке C" );

mas[2].CountStr = 200;

// обработка

Execute( mas, 3 );

return(0);

}

27)Написать фрагмент программы, выводящий на экран элементы массива целых чисел, превышающих среднее арифметическое всех элементов. Поиск среднего арифметического оформить в виде отдельной функции.

// привел полный исходник программы

#include <stdio.h>

#include <stdlib.h>

#include <locale.h>

float SrednArifm( int *mas, int N )

{

float fSredn = 0;

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

{

fSredn += mas[i];

}

fSredn /= (float)N;

return( fSredn );

}

int main( void )

{

setlocale( LC_ALL, "rus" );

const int N = 7;

int mas[N] = { 1, 0, 0, 7, 0, 9, 5 };

float fSrdn = SrednArifm( mas, N );

printf( "Среднее арифметическое: %f\n", fSrdn );

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

{

if( mas[i] > fSrdn )

printf( "%i ", mas[i] );

}

printf( "\n" );

system( "pause" );

return(0);

}

23)Данные об автомобилях хранятся в массиве структур (марка, мощность). Написать фрагмент программы, выводящий на экран величину транспортного налога из расчета 15 руб за 1 л.с., если мощность двигателя не превышает 100 л.с. и 25 руб. за л.с. для автомобилей мощностью 100 л.с. и выше. Вывод упорядочить в алфавитном порядке по маркам автомобилей.

// привел полный исходник программы

#include <stdio.h>

#include <stdlib.h>

#include <locale.h>

#include <string.h>

struct Car

{

char szMarka[50];

int Moshnost;

};

void Execute( Car *mas, int N )

{

float nSrednCena = 0;

int nCout = 0;

// сортировка

printf( "Книги:\n" );

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

{

printf( "%s\n", mas[i].szMarka );

printf( "%i\n", mas[i].Moshnost );

printf( "Налог: " );

if( mas[i].Moshnost <= 100 )

printf( "%i\n", mas[i].Moshnost * 15 );

else

printf( "%i\n", mas[i].Moshnost * 25 );

printf( "-----------------\n" );

}

system( "pause" );

}

int main( void )

{

setlocale( LC_ALL, "rus" );

// тут просто вношу данные

Car mas[3];

strcpy( mas[0].szMarka, "Мерс" );

mas[0].Moshnost = 150;

strcpy( mas[1].szMarka, "Ферари" );

mas[1].Moshnost = 50;

strcpy( mas[2].szMarka, "Запор" );

mas[2].Moshnost = 350;

// обработка

Execute( mas, 3 );

return(0);

}

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