Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <stdlib.h>
- #include "polinom.h"
- void ispisi(const Polinom *p){
- int nulaPolinom = 1;
- for (int i = p->stepen; i >= 0; i--){
- if (p -> kfc[i]){
- nulaPolinom = 0;
- if (p -> kfc[i] >= 0 && i!= p->stepen)
- putchar('+');
- if (i > 1)
- printf("%.2fx^%d", p->kfc[i], i);
- else if (i == 1)
- printf("%.2fx", p->kfc[i]);
- else
- printf("%.2f", p->kfc[i]);
- }
- }
- if (nulaPolinom)
- putchar('0');
- putchar('\n');
- }
- Polinom ucitaj(){
- Polinom p;
- printf("Unesi polinom:\n");
- scanf("%d", &p.stepen);
- while(p.stepen < 0){ //||p.stepen > MAKS
- printf("Stepen je pogresan\n");
- scanf("%d", &p.stepen);
- }
- for (int i = p.stepen; i >=0; i--)
- scanf("%lf", &p.kfc[i]);
- return p;
- }
- double horneova(const Polinom *p, double x){
- double rezultat = 0;
- for (int i = p->stepen; i>=0; i--)
- rezultat = rezultat*x+p->kfc[i];
- return rezultat;
- }
- Polinom saberi(const Polinom *p, const Polinom *q){
- Polinom r;
- r.stepen = p->stepen > q ->stepen ? p->stepen:q->stepen;
- for (int i = 0; i <= r.stepen; i++){
- r.kfc = (i > p->stepen ? 0: p->kfc[i]) + (i > q->stepen? 0 : q->kfc[i]);
- }
- return r;
- }
- Polinom pomnozi(const Polinom *p, const Polinom *q){
- Polinom r;
- r.stepen = p->stepen + q->stepen;
- if (r.stepen > MAKS){
- fprintf(stderr, "Greska");
- exit(EXIT_FAILURE);
- }
- for (int i = 0; i < r.stepen; i++)
- r.kfc[i] = 0;
- for (int i = 0; i <= p->stepen; i++)
- for (int j = 0; j <= q->stepen; j++)
- r.kfc[i + j] += p->kfc[i] * q-> kfc[j];
- return r;
- }
- Polinom izvod(const Polinom *p){
- Polinom r;
- if (p->stepen > 0){
- r.stepen = p->stepen - 1;
- for (int i =0; i <= r.stepen; i++){
- r.kfc[i] = (i+1*p->kfc[i+1];
- }
- }
- else
- r.kfc[0] = r.stepen=0;
- return r;
- }
- Polinom n_izvod(const Polinom *p, int n){
- Polinom r;
- if (n < 0){
- fprintf(stderr, "Greska, n_izvod");
- exit(EXIT_FAILURE);
- }
- if (n == 0)
- return *p;
- r = izvod(p);
- for (int i = 1; i < n; i++)
- r = izvod(&r);
- return r;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement