?? math.c
字號:
// Testowanie biblioteki funkcji matematycznych
#include <avr/io.h> // dost阷 do rejestr體
#include <math.h> // funkcje matematyczne
#include <stdio.h> // standardowe wej渃ie/wyj渃ie
#include "uart.h" // obs硊ga portu szeregowego
//----------------------------------------------------------
int main(void) // program g丑wny
{
float a,b,c,delta,sqrt_delta,x1,x2;
UART_init(); // inicjalizacja portu szeregowego
fdevopen(UART_putchar, UART_getchar, 0);
printf_P(PSTR("Test biblioteki matematycznej\r\n"));
while(1) // p阾la niesko馽zona
{
printf_P(PSTR("\r\nRownanie kwadratowe"));
printf_P(PSTR("\r\nPodaj wpolczynnik a: "));
scanf("%f",&a);
printf_P(PSTR("\r\nPodaj wpolczynnik b: "));
scanf("%f",&b);
printf_P(PSTR("\r\nPodaj wpolczynnik c: "));
scanf("%f",&c);
printf_P(PSTR("\r\nPostac rownania: %fx^2+%fx+%f=0"), a, b, c);
delta=b*b-4*a*c;
a*=2; // od tej pory a nie jest potrzebne
// wpisujemy tam 2*a
printf_P(PSTR("\r\nDelta: %f"),delta);
if (delta<0)
{
printf_P(PSTR("\r\nDelta mniejsza od zera - brak pierwiastkow!!!"));
}
else if (delta==0)
{
printf_P(PSTR("\r\nDelta rowna zero - jeden pierwiastek"));
x1=-b/a;
printf_P(PSTR("\r\nx=%f\r\n"),x1);
}
else
{
printf_P(PSTR("\r\nDelta wieksza od zera - dwa pierwiastki!!!"));
sqrt_delta=sqrt(delta);
x1=(-b-sqrt_delta)/a;
printf_P(PSTR("\r\nx1=%f"),x1);
x2=(-b+sqrt_delta)/a;
printf_P(PSTR("\r\nx2=%f"),x2);
}
}
}
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -