From 376a638bc0b057f57944da25ce41deed7a1b8cb3 Mon Sep 17 00:00:00 2001 From: Leandro Lucarella Date: Tue, 25 Mar 2003 14:26:57 +0000 Subject: [PATCH] Se agrega el informe. --- informe.lyx | 181 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 181 insertions(+) create mode 100644 informe.lyx diff --git a/informe.lyx b/informe.lyx new file mode 100644 index 0000000..0e2443d --- /dev/null +++ b/informe.lyx @@ -0,0 +1,181 @@ +#LyX 1.2 created this file. For more info see http://www.lyx.org/ +\lyxformat 220 +\textclass article +\language spanish +\inputencoding auto +\fontscheme default +\graphics default +\paperfontsize default +\spacing single +\papersize a4paper +\paperpackage widemarginsa4 +\use_geometry 0 +\use_amsmath 0 +\use_natbib 0 +\use_numerical_citations 0 +\paperorientation portrait +\secnumdepth 3 +\tocdepth 3 +\paragraph_separation indent +\defskip medskip +\quotes_language english +\quotes_times 2 +\papercolumns 1 +\papersides 1 +\paperpagestyle default + +\layout Title + +Taller de Programación I +\newline +Ejercicio Número 1 +\layout Author + +Leandro Lucarella (77.891) +\layout Date + +Jueves 25 de Marzo de 2003 +\newline +$Id$ +\layout Section + +Código Fuente. +\layout Standard + +Ver páginas anexas. +\layout Section + +Método de resolución y conclusiones. +\layout Standard + +El método de resolución fue el siguiente: +\layout Standard + +Se planteó un dominio para dibujar cuadrado (de NxN) de +\begin_inset Formula $-\frac{N}{2}$ +\end_inset + + a +\begin_inset Formula $\frac{N}{2}-1$ +\end_inset + +, representandose las áreas a dibujar en coordenadas polares, de modo que + una porción de la torta es un área comprendida entre un +\begin_inset Formula $\rho _{máx}$ +\end_inset + +(o radio) y cero y entre un +\begin_inset Formula $\varphi _{fin}$ +\end_inset + + y +\begin_inset Formula $\varphi _{cero}$ +\end_inset + +. + Es decir, para que un +\begin_inset Formula $\rho $ +\end_inset + + y +\begin_inset Formula $\varphi $ +\end_inset + + arbitrarios pertenezcan a una parte de la torta deben ser +\begin_inset Formula $0\leq \rho \leq \rho _{máx}$ +\end_inset + + y +\begin_inset Formula $\varphi _{cero}\leq \varphi <\varphi _{fin}$ +\end_inset + +. + A efectos prácticos se usa +\begin_inset Formula $\varphi _{cero}\leq \varphi \leq \varphi _{fin}$ +\end_inset + + para evitar errores de rendondeo. +\layout Standard + +A partir de esto, se traduce la entrada del usuario a valores +\begin_inset Formula $\Delta \varphi $ +\end_inset + + a través de una regla de tres simple obtenemos que +\begin_inset Formula $\Delta \varphi _{j}=\frac{entrada_{j}\cdot 2\pi }{{\displaystyle \sum _{i=1}^{N}entrada_{i}}}$ +\end_inset + + siendo +\begin_inset Formula $\varphi _{j_{cero}}={\displaystyle \sum _{i=0}^{j-1}\Delta \varphi _{i}}$ +\end_inset + + y +\begin_inset Formula $\varphi _{j_{fin}}=\varphi _{j_{cero}}+\Delta \varphi _{j}$ +\end_inset + +. + También se traduce el ancho y alto de la pantalla al dominio cuadrado (NxN), + aplicando un factor de corrección en +\begin_inset Formula $x$ +\end_inset + + o en +\begin_inset Formula $y$ +\end_inset + + según corresponda, para que +\begin_inset Formula $\rho _{máx}=N=\max (ancho,alto)$ +\end_inset + +. +\layout Standard + +Ahora sólo falta recorrer los puntos de la pantalla uno por uno chequeando + en qué parte de la torta está ese punto (traduciendo el +\begin_inset Formula $(x,y)$ +\end_inset + + de pantalla a +\begin_inset Formula $(\rho ,\varphi )$ +\end_inset + + del +\emph on +modelo +\emph default +) y dibujando el número que corresponda. +\layout Standard + +Un detalle que cabe mencionar es el error de redondeo. + Al hacer las sumatorias para calcular los +\begin_inset Formula $\varphi _{cero}$ +\end_inset + + y +\begin_inset Formula $\varphi _{fin}$ +\end_inset + + muchas veces el +\begin_inset Formula $\varphi _{fin}$ +\end_inset + + final no coincidía con +\begin_inset Formula $2\pi $ +\end_inset + +, quedando una línea en blanco para +\begin_inset Formula $\varphi =2\pi $ +\end_inset + +. + Esto se solucionó usando doble precisión ( +\family typewriter +double +\family default +) para los cálculos y simple precisión ( +\family typewriter +float +\family default +) para las comparaciones, de modo que al tener menos decimales, los errores + de rendondeos producidos en doble precisión no son apreciables. +\the_end -- 2.43.0