Задача 1) Заданы три числа. Определить, могут ли они являться длинами сторон треугольника и, если да, является ли этот треугольник равнобедренным и равносторонним

Российская Федерация

Тюменская область

ХАНТЫ-МАНСИЙСКИЙ АВТОНОМНЫЙ ОКРУГ – ЮГРА

Департамент образования и науки

Сургутский государственный университет

Ханты-Мансийского автономного округа

 

 

  Инженерно-физический факультет Кафедра автоматики и компьютерных систем

 

 

Отчет

По лабораторной работе № 2

По дисциплине «Структурное программирование»

 

 

Выполнил: студент группы 12-11а

Заика Д.В.

Проверил: ассистент

Щербаков А.М.

 

Сургут

2012 г.

Задача 1) Заданы три числа. Определить, могут ли они являться длинами сторон треугольника и, если да, является ли этот треугольник равнобедренным и равносторонним.

 

1).Треугольник является равносторонним, если длины всех его сторон равны.

Треугольник является равнобедренным, если длины двух его сторон равны.

2).Блок-схема:

       
 
 
   

 

 


 

 


1) Основная часть программы на языке C++:

4)

 

#include "stdafx.h"

#include "math.h"

 

int _tmain(int argc, _TCHAR* argv[])

{

float x, y, z;

printf("vvedite storonu treugol'nika");

scanf ("%f",&x);

printf("\nVvedite vtoruu storonu: ");

scanf("%f",&y);

printf("\nVvedite tret'u storonu: ");

scanf("%f",&z);

if (x+y>z)

{

Printf("sushestvyet takoy treugol'nik");

if ((abs(x-y)<0.0001)&&(abs(y-z)<0.0001))

{

printf("Treugolnik ravnostoronniy");

}

else

{

if ((x==y)||(x==z)||(y==z))

{

printf("treugolnik ravnobedrenniy");

}

}

}

else

{

printf("ne sushestvyet takoy treugol'nik");

}

return 0;

}

 

 

4).Условные операторы:

Конструкция для проверки существования треугольника

if (x+y>z)

Если треугольник равносторонний то используем конструкцию

if ((abs(x-y)<0.0001)&&(abs(y-z)<0.0001))

Если треугольник равнобедренный то используем конструкцию

if ((x==y)||(x==z)||(y==z))


Задача 16) Заданы коэффициенты квадратного уравнения. Найти его действительные корни, если они существуют..

Для решения задачи необходимо выяснить действительные корни.

Если они существуют то используем формулу дискриминанта (D>0), (D==0)

1) Блок-схема:

 

 


2) Основная часть программы на языке C++:

 

#include "stdafx.h"

#include "math.h"

 

int _tmain(int argc, _TCHAR* argv[])

{

float a, b, c, D, x, y;

printf("vvedite perviy koefficient");

scanf ("%f",&a);

printf("vvedite vtoroy koefficient");

scanf("%f",&b);

printf("vvedite tretiy koefficient");

scanf("%f",&c);

D=b*b - (4*a*c);

if (D<0)

{

printf("korney net");

}

else if (D==0)

{

x=-b/(2*a);

printf("koren' raven %f", x);

} else if (D>0)

{

x=((-b)+ sqrt(D))/(2*a);

y=((-b)- sqrt(D))/(2*a);

printf("perviy koren' raven %f\n",x);

printf("vtoroy koren' raven %f\n",y);

}

return 0;

}

 

 

3) Обоснование выбора условных операторов:

Если корней нет то if (D<0),

Если один корен то if (D==0), вычесляем по формуле x=-b/(2*a);

Если два корня то if (D>0), вычесляем по формуле x=((-b)+ sqrt(D))/(2*a);

y=((-b)- sqrt(D))/(2*a);


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: