Практикум по программированию. Основы. Циклы. Площадь треугольника

From AsIsWiki
Jump to: navigation, search

Назад · Задачи · Дальше


Contents

Java

import java.util.Scanner;
import java.lang.Math;

public class Task15 {

    public static void main(String[] args) {

        Scanner in = new Scanner(System.in);

        System.out.println();
        System.out.println(" Расчет площади треугольника:");
        System.out.println(" 1 - по высоте и основанию");
        System.out.println(" 2 - по двум сторонам и углу между ними");
        System.out.println(" 3 - по трем сторонам");
        System.out.println(" 0 - выход из программы");

        int n;
        double a, b, c, x, h, p, s = 0;

        do {
            System.out.println("------------------------------");
            System.out.print(" Введите номер измерения: ");
            n = in.nextInt();

            switch (n) {

                case 1:
                    System.out.print(" Высота: ");
                    h = in.nextDouble();
                    System.out.print(" Основание: ");
                    a = in.nextDouble();
                    s = h * a / 2;
                    break;

                case 2:
                    System.out.print(" Сторона A: ");
                    a = in.nextDouble();
                    System.out.print(" Сторона B: ");
                    b = in.nextDouble();
                    System.out.print(" Угол между A и B: ");
                    x = in.nextDouble() * Math.PI / 180;
                    s = a * b * Math.sin(x) / 2;
                    break;

                case 3:
                    System.out.print(" Сторона A: ");
                    a = in.nextDouble();
                    System.out.print(" Сторона B: ");
                    b = in.nextDouble();
                    System.out.print(" Сторона C: ");
                    c = in.nextDouble();
                    p = (a + b + c) / 2;
                    s = Math.sqrt(p * (p - a) * (p - b) * (p - c));
                    break;
            }

            if (n != 0) {
                System.out.println("------------------------------");
                System.out.printf(" S = %.2f\n", s);
            }

        } while (n == 1 || n == 2 || n == 3);
    }
}


C++

// g++ 4.2

#include <iostream>
#include <math.h>

using namespace std;

int main() {
    
    cout << "\n Расчет площади треугольника:\n";
    cout << " 1 - по высоте и основанию\n";
    cout << " 2 - по двум сторонам и углу между ними\n";
    cout << " 3 - по трем сторонам\n";
    cout << " 0 - выход из программы\n";
    
    int n;
    double a, b, c, x, h, p, s = 0;
    
    do {
        cout << "------------------------------\n";
        cout << " Введите номер измерения: ";
        cin >> n;
        
        switch (n) {
                
            case 1:
                cout << " Высота: ";
                cin >> h;
                cout << " Основание: ";
                cin >> a;
                s = h * a / 2;
                break;
                
            case 2:
                cout << " Сторона A: ";
                cin >> a;
                cout << " Сторона B: ";
                cin >> b;
                cout << " Угол между A и B: ";
                cin >> x;
                s = a * b * sin(x * M_PI / 180) / 2;
                break;
                
            case 3:
                cout << " Сторона A: ";
                cin >> a;
                cout << " Сторона B: ";
                cin >> b;
                cout << " Сторона C: ";
                cin >> c;
                p = (a + b + c) / 2;
                s = sqrt(p * (p - a) * (p - b) * (p - c));
                break;
        }
        
        if (n != 0) {
            cout << "------------------------------\n";
            printf(" S = %.2f\n", s);
        }
        
    } while (n == 1 || n == 2 || n == 3);
    
    cout << "\n";
    return 0;
}


Pascal



JavaScript




Назад · Задачи · Дальше

Personal tools
Namespaces

Variants
Actions
Navigation
Tools