#include <stdio.h>
#include <stdlib.h>
int ReadInt(int,int,char*);
int Menue(void);
int HornerSchema(int*,int, int);
void HornerFeldEinlesen(int*,int);
void Message(char*,int);
//------------------------------------------------------------------------------------------
// Hauptfunktion: Einstiegspunkt
int main()
{
while(Menue());
return 0;
}
//------------------------------------------------------------------------------------------
int Menue()
{
int Wahl=0;
printf("\n\n\tAbschlusspruefung Informatik"); printf("\n\n\tHorner Schema..............1"); printf("\n\n\tFibonacci..................2"); Wahl=ReadInt(0,3,"\n\nBitte waehlen:");
switch(Wahl)
{
case 1:
{
int feld[1000]; /* das sollte reichen */
int n = ReadInt(0,6,"\n\n\tPolynomgrad:");
int wert = ReadInt(-10,10,"\n\n\tX-Wert:");
printf("\n\n %s","\tHornerschema"); HornerFeldEinlesen(feld,n);
printf("\n\n\tX-Wert %i",HornerSchema
(feld
, n
, wert
)); break;
}
case 2:
{
}
}
Message("\n\n\tWeiter mit beliebiger Taste....",1);
return (Wahl);
}
//-------------------------------------------------------------------------------------------
int HornerSchema(int*HornerFeld, int N,int Wert)
{
int i;
int r = 0;
for(i=N-1; i >= 0; i--)
{
r = r * Wert + HornerFeld[i];
}
return r;
}
//-------------------------------------------------------------------------------------------
void HornerFeldEinlesen(int*HornerFeld, int n)
{
while(n--)
{
scanf("%d",&HornerFeld
[n
]); }
}
//-------------------------------------------------------------------------------------------
void Message(char*Text,int Stop)
{
if(Text)
if(Stop==1)
}
//-------------------------------------------------------------------------------------------
int ReadInt(int UG,int OG,char *Text)
{
int IZahl;
do
{
printf("\n %s( %d...%d) ",Text
,UG
,OG
); if ((IZahl<UG)||(IZahl>OG))
}
while((IZahl<UG)||(IZahl>OG));
return (IZahl);
}
I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxzdGRsaWIuaD4KCgppbnQgUmVhZEludChpbnQsaW50LGNoYXIqKTsKaW50IE1lbnVlKHZvaWQpOwppbnQgSG9ybmVyU2NoZW1hKGludCosaW50LCBpbnQpOwp2b2lkIEhvcm5lckZlbGRFaW5sZXNlbihpbnQqLGludCk7CnZvaWQgTWVzc2FnZShjaGFyKixpbnQpOwovLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQovLyBIYXVwdGZ1bmt0aW9uOiBFaW5zdGllZ3NwdW5rdAppbnQgbWFpbigpCnsKICAgIHdoaWxlKE1lbnVlKCkpOwogICAgcmV0dXJuIDA7Cn0KLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KaW50IE1lbnVlKCkKewogICAgaW50IFdhaGw9MDsKICAgIHByaW50ZigiXG5cblx0QWJzY2hsdXNzcHJ1ZWZ1bmcgSW5mb3JtYXRpayIpOwogICAgcHJpbnRmKCJcblxuXHRIb3JuZXIgU2NoZW1hLi4uLi4uLi4uLi4uLi4xIik7CiAgICBwcmludGYoIlxuXG5cdEZpYm9uYWNjaS4uLi4uLi4uLi4uLi4uLi4uLjIiKTsKICAgIFdhaGw9UmVhZEludCgwLDMsIlxuXG5CaXR0ZSB3YWVobGVuOiIpOwogICAgc3dpdGNoKFdhaGwpCiAgICB7CiAgICBjYXNlIDE6CiAgICAgICAgewogICAgICAgICAgaW50IGZlbGRbMTAwMF07IC8qIGRhcyBzb2xsdGUgcmVpY2hlbiAqLwogICAgICAgICAgaW50IG4gPSBSZWFkSW50KDAsNiwiXG5cblx0UG9seW5vbWdyYWQ6Iik7CiAgICAgICAgICBpbnQgd2VydCA9IFJlYWRJbnQoLTEwLDEwLCJcblxuXHRYLVdlcnQ6Iik7CiAgICAgICAgICAgIHByaW50ZigiXG5cbiAlcyIsIlx0SG9ybmVyc2NoZW1hIik7CiAgICAgICAgICBIb3JuZXJGZWxkRWlubGVzZW4oZmVsZCxuKTsKICAgICAgICAgIHByaW50ZigiXG5cblx0WC1XZXJ0ICVpIixIb3JuZXJTY2hlbWEoZmVsZCwgbiwgd2VydCkpOwogICAgICAgICAgICBicmVhazsKICAgICAgICB9CiAgICBjYXNlIDI6CiAgICAgICAgewogICAgICAgIH0KCiAgICB9CiAgICBNZXNzYWdlKCJcblxuXHRXZWl0ZXIgbWl0IGJlbGllYmlnZXIgVGFzdGUuLi4uIiwxKTsKICAgIHJldHVybiAoV2FobCk7Cn0KLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCmludCBIb3JuZXJTY2hlbWEoaW50Kkhvcm5lckZlbGQsIGludCBOLGludCBXZXJ0KQp7CiAgaW50IGk7CiAgaW50IHIgPSAwOwoKICBmb3IoaT1OLTE7IGkgPj0gMDsgaS0tKQogIHsKICAgIHIgPSByICogV2VydCArIEhvcm5lckZlbGRbaV07CiAgfQogIHJldHVybiByOwp9Ci8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQp2b2lkIEhvcm5lckZlbGRFaW5sZXNlbihpbnQqSG9ybmVyRmVsZCwgaW50IG4pCnsKICAgIHByaW50ZigiXG5cblxuIik7CiAgICB3aGlsZShuLS0pCiAgICB7CiAgICAgIHByaW50ZigiXG4lZC5XZXJ0OiAiLG4rMSk7CiAgICAgIHNjYW5mKCIlZCIsJkhvcm5lckZlbGRbbl0pOwogICAgfQp9Ci8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQp2b2lkIE1lc3NhZ2UoY2hhcipUZXh0LGludCBTdG9wKQp7CiAgICB3aGlsZShnZXRjaGFyKCkhPSdcbicpOwogICAgaWYoVGV4dCkKICAgICAgICBwcmludGYoVGV4dCk7CiAgICBpZihTdG9wPT0xKQogICAgICAgIGdldGNoYXIoKTsKfQovLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KaW50IFJlYWRJbnQoaW50IFVHLGludCBPRyxjaGFyICpUZXh0KQp7CiAgICBpbnQgSVphaGw7CiAgICBkbwogICAgewogICAgICAgIHByaW50ZigiXG4gJXMoICVkLi4uJWQpICIsVGV4dCxVRyxPRyk7CiAgICAgICAgc2NhbmYoIiVkIiwmSVphaGwpOwogICAgICAgICAgICBpZiAoKElaYWhsPFVHKXx8KElaYWhsPk9HKSkKICAgICAgICAgICAgICAgIHByaW50ZigiXGFcbiIpOwogICAgfQogICAgd2hpbGUoKElaYWhsPFVHKXx8KElaYWhsPk9HKSk7CnJldHVybiAoSVphaGwpOwp9Cg==