aca voy:
Cita:duda 1 >> pregunta de la página 57 vol1 ejercicio 40 que dice : ¿ cual es la minima constante real ? escribala en todos los formatos posibles.
No se si se refiere al menor numero, o aquel que refiera a que tiene menor cantidad de digitos (puesto que hay partes opcionales)
De cualquier manera, si se refiere al menor numero, sera aquel numero -0.0000... y hasta donde la memoria te de, porque la recursividad es infinita, hasta donde uno quiera, pero la memoria no (tenes un limite segun los tipos de datos), asique supongo que se debe referir a eso..
De cualquier manera, no te van a preguntar eso, asique olvidate
Cita:duda 2 >> página 66 vol1 ejercicio 74 que dice : for( ;-4 ; ) ;
¿ es derivable de la bnf? ¿ es sintacticamente correcta?
y
Cita:duda 3 >> como se deriva para llegar a obtener el -4 ?
es derivable de la bnf, pues llegas derivando a partir de la bnf..
Si te fijas, la bnf es
for (expresionOP;expresionOP;expresionOP) sentencia;
y expresion como es "op" podes no poner nada;
ahora bien, "expresion", si derivas la BNF de la pag 59 y 60
llegaras a
ExpUnaria: OperUnario ExpUnaria
donde Operunario lo reemplazas por el menos "-"; y expUnaria por ExpPostfijo, y este por expPrimaria, y este por Constante, de donde sale el "4"
A su vez cumple con las reestricciones semanticas (los ";" son obligatorios, pero pueden estar vacias las 3 expresiones) por lo que es sintacticamente correcta.
Y sentencia que viene entre el ultimo parentesis y antes del ultimo ";" puede ser vacia, aunque no esta puesto en la BNF de ANSI C (porque esta incompleta) se ve en la de Pascal.
Cita:duda 4 >> página 66 vol1 ejercicio 75 que dice:
¿ que accion realiza la sentencia do 22; while (3) ; ?
el "22" no hace nada, y el "while (3)" es siempre verdadero (pues falso = 0)
entonces siempre que evalua la condicion da verdadera, y hace 22,
y que es "hace 22"?
Nada. es un ciclo infinito que no hace nada.