Pedir a expertos en programación que diseñen un sistema operativo de división basado en lenguaje C
#include
#include
#include
# incluir
#define VALID 10
void div(float a, float b, char *sresult)
{
char temp[30], *p;
char sa[20];
char sea[10];
char sb[20];
char seb[10];
long int ai, bi, ei;
int i = 0, count=0;
sprintf(temp, "%+e", a);
*p = temp;
while(*p!=0)
{
if(*p=='.')
{
p++;
continuar;
}
if(*p=='e')
{
srpintf(sea, *(p+1));
romper;
}
else
{
sa[i++] = *p;
}
}
sa[i] = 0;
sprintf(temp, "%+e", b);
* p = temp;
i = 0;
mientras(*p!=0)
{
si(*p= ='.')
{
p++;
continuar;
}
if(*p =='e')
{
srpintf(seb, *(p+1));
break
}
más
{
sb[i++] = *p;
}
}
sb[i] = 0;
ai = atol(sa);
bi = atol(sb);
ei = atol( mar) - atol(seb);
if((ai>0)&&(bi<0))
sresult[0] = '-';
else if((ai<0)&&(bi>0))
sresultado[0] = '-';
else
sresultado[ 0] = '+';
ai = abs(ai);
bi = abs(bi);
sresult[1] = '.' ;
si(sa[
1] { ei--; } while((ai/bi)< 0) { ai *= 10; } sprintf(&(sresultado[2]), "%d ", (ai/bi)); while(count { sprintf(temp, "%d", ai/bi) ; strcat(sresultado, temp); ai = (ai-ai/bi*bi)*10; count++; } strcat(resultado, 'e'); sprintf(temp, "%d", ei); strcat(resultado, temp ); resultado[1] = resultado[2]; resultado[2] = '.'; } void main() { float x, y; resultado char[VALID*2]; scanf("% f%f", &x, &y); div(x, y, resultado); printf("x div y es: %s", resultado); p> }