Przejdź do treści

Centrum Kształcenia Zawodowego i Ustawicznego w Mrągowie

Kalkulator bc: Pierwiastki kwadratowe z liczb ujemnych

piątek,

Kalkulator bc: Pierwiastki kwadratowe z liczb ujemnych

Kalkulator bc bezpośrednio nie obsługuje pierwiastków kwadratowych z liczb ujemnych. W matematyce rozwiązaniem tego problemu jest użycie liczb zespolonych, gdzie pierwiastek z liczby ujemnej jest wyrażony za pomocą jednostki urojonej i, gdzie i^2 = -1. W bc nie ma wbudowanego wsparcia dla liczb zespolonych, ale możesz obejść ten problem, stosując własne metody do obsługi takich przypadków.

Przykładowy sposób na obliczenie pierwiastka kwadratowego z liczby ujemnej

  1. Najpierw sprawdź, czy liczba jest ujemna. Jeśli tak, przejdź do kolejnego kroku. Jeśli nie, po prostu użyj standardowej funkcji pierwiastka kwadratowego.
  2. Jeśli liczba jest ujemna, przekształć ją na dodatnią, aby móc obliczyć pierwiastek kwadratowy.
  3. Oblicz pierwiastek kwadratowy z tej dodatniej liczby.
  4. Do wyniku dodaj jednostkę urojoną i, aby wskazać, że pierwiastek kwadratowy pochodził z liczby ujemnej.

Przykłądowy skrypt bash

Oto przykładowy skrypt Bash, który wykorzystuje bc do obliczenia pierwiastka kwadratowego z liczby ujemnej:

#!/bin/bash

number=-16  # Przykładowa liczba ujemna

# Sprawdzenie, czy liczba jest ujemna
if [ $(echo "$number < 0" | bc) -eq 1 ]; then
    # Konwersja na dodatnią i obliczenie pierwiastka kwadratowego
    sqrt_val=$(echo "sqrt($number * -1)" | bc)
    # Dodanie jednostki urojonej
    result="${sqrt_val}i"
else
    # Bezpośrednie obliczenie pierwiastka kwadratowego
    result=$(echo "sqrt($number)" | bc)
fi

echo "Pierwiastek kwadratowy z $number to $result"

Trzy miesiące temu na naszej stronie…

Artykuł: Pierwszy skrypt bash

Pierwszy skrypt bash

Artykuł: Harmonogram egzaminów maturalnych

Harmonogram egzaminów maturalnych

Artykuł: Staże w Hiszpanii

Staże w Hiszpanii

Artykuł: Conformité Européenne

Conformité Européenne

Artykuł: Display Stream Compression

Display Stream Compression

Artykuł: High Dynamic Range

High Dynamic Range

Nasze technikum

Technik informatyk

Szkoły dla dorosłych

Nasza szkoła

Pełna oferta edukacyjna

Oferta szkoły