Ploščina poljubnega trikotnika
Sestavi metodo, ki bo izračunala ploščino poljubnega trikotnika.
Metoda naj ploščino ($S$) trikotnika s stranicami $a$, $b$ in $c$ izračuna po Heronovem obrazcu:
$$
s=\frac{a+b+c}{2}, S = \sqrt{(s-a)(s-b)(s-c)s}.
$$
Namig
Metoda bo imela tri podatke (realna števila). Spomni se, da obstaja razred Math, ki gotovo zna izračunati kvadratni koren realnega števila. Kako že?
Rešitev (Java)
import javax.swing.JOptionPane;
public class PloscinaTrikotnika {
public static void main(String[] args) {
//vhodni podatki
String stranica = JOptionPane.showInputDialog("1. stranica trikotnika je dolga:");
double a = Double.parseDouble(stranica);
stranica = JOptionPane.showInputDialog("2. stranica trikotnika je dolga:");
double b = Double.parseDouble(stranica);
stranica = JOptionPane.showInputDialog("3. stranica trikotnika je dolga:");
double c = Double.parseDouble(stranica);
//uporabimo metodo in izpisemo rezultat
System.out.println("Ploscina danega trikotnika je " + ploscina(a,b,c) + ".");
}
public static double ploscina(double a, double b, double c) {
double s = (a + b + c) / 2;
double ploscina = Math.sqrt((s - a) * (s - b) * (s - c) * s);
return ploscina;
}
}
Rešitev (C#)
using System;
using System.Collections.Generic;
using System.Text;
namespace PloscinaTrikotnika {
class PloscinaTrikotnika {
static void Main(string[] args) {
//vhodni podatki
Console.Write("1. stranica trikotnika je dolga:");
double a = Double.Parse(Console.ReadLine());
Console.Write("2. stranica trikotnika je dolga:");
double b = Double.Parse(Console.ReadLine());
Console.Write("3. stranica trikotnika je dolga:");
double c = Double.Parse(Console.ReadLine());
//uporabimo metodo in izpisemo rezultat
Console.WriteLine("Ploscina danega trikotnika je " + ploscina(a, b, c) + ".");
Console.ReadKey();
}
public static double ploscina(double a, double b, double c) {
double s = (a + b + c) / 2;
double ploscina = Math.Sqrt((s - a) * (s - b) * (s - c) * s);
return ploscina;
}
}
}
Rešitev (Python)
#!C:/Python30/python
#-*-encoding: utf-8 -*-
# -*- coding: latin-1 -*-
'''
Created on 24.6.2009
@author: fajdigap
'''
import math
def ploscina(a, b, c):
s = (a + b + c) / 2
ploscina = math.sqrt((s - a) * (s - b) * (s - c) * s)
return ploscina
#vhodni podatki
a = float(input("1. stranica trikotnika je dolga:"))
b = float(input("2. stranica trikotnika je dolga:"))
c = float(input("3. stranica trikotnika je dolga:"))
#uporabimo metodo in izpisemo rezultat
print ("Ploscina danega trikotnika je",ploscina(a,b,c),".")