<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Nullable Blog [Ignoranto.Info] &#187; Funciones</title>
	<atom:link href="http://ignoranto.info/tags/funciones/feed/" rel="self" type="application/rss+xml" />
	<link>http://ignoranto.info</link>
	<description>grbr.says(&#34;a little bit of everything and a lot of nothing&#34;);</description>
	<lastBuildDate>Sat, 24 Jul 2010 01:42:50 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>Buscar paréntesis () con PHP!</title>
		<link>http://ignoranto.info/ricercando/buscar-parentesis-con-php/</link>
		<comments>http://ignoranto.info/ricercando/buscar-parentesis-con-php/#comments</comments>
		<pubDate>Mon, 20 Apr 2009 18:22:51 +0000</pubDate>
		<dc:creator>gerWare</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[Programación]]></category>
		<category><![CDATA[Algoritmo]]></category>
		<category><![CDATA[Funciones]]></category>

		<guid isPermaLink="false">http://codigo.ignoranto.info/?p=84</guid>
		<description><![CDATA[Si tuvieras esta expresión: 1+(4*(7-2)) ¿Cómo harías para extraer los valores de los últimos parentesis? No es muy dificil, primero necesitamos saber la ULTIMA posición del ULTIMO parentesis de APERTURA! » &#8221; ( &#8221; y luego saber la PRIMERA posición del PRIMER paréntesis de CIERRE! » &#8221; ) &#8220;; Y &#8230; ¿Cómo lo hago? En [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: left;"><strong>Si tuvieras esta expresión:</strong></p>
<h2 style="text-align: center;"><strong>1+(4*(7-2))</strong></h2>
<p style="text-align: left;"><strong>¿Cómo harías para extraer los valores de los últimos parentesis?<br />
</strong>No es muy dificil, primero necesitamos saber la ULTIMA posición del ULTIMO parentesis de APERTURA! » &#8221; ( &#8221; y luego saber la PRIMERA posición del PRIMER paréntesis de CIERRE! » &#8221; ) &#8220;;</p>
<p style="text-align: left;"><strong>Y &#8230; ¿Cómo lo hago?</strong><br />
En PHP tenemos la función STRPOS que nos devuelve la posición de cualquier caracter que busquemos dentro de una cadena de texto. Tenemos también STRRPOS (nótese de una R adicional) que nos devuelve la última posición de un caracter en particular!</p>
<pre style="text-align: left;">// ejemplo
$txt =
 "a(b(c))";
//0123456 las posiciones del texto!
echo $p01 = strpos ( $txt, ")" ); // nos devuelve 5
echo $p02 = strrpos( $txt, "(" ); // nos devuelve 3</pre>
<p>Con el ejemplo anterior hacemos que PHP nos muestre la posición de los parentesis () que están dentro de los otros parentesis ()!</p>
<p>Ahora extraeremos el contenido de dichos paréntesis!</p>
<pre>// ejemplo
$txt =
 "a(b(c))";
//0123456 las posiciones del texto!
echo $p01 = strpos ( $txt, ")" ); // nos devuelve 5
echo $p02 = strrpos( $txt, "(" ); // nos devuelve 3
// substr (texto, posicion, ncaracteres)
// $p02 - $p01 nos da la longitud de cadena a extraer!
// $p02 es 3, entonces comenzará a extraer desde la pos 3
// $p01 es 5, pero solo queremos 1 caracter!
echo substr ( $txt, $p02 , $p01-$p02);
// para solo extraer la letra C, seria asi:
echo substr ( $txt, $p02+1 , $p01-$p02-1);</pre>
<p>Eso es todo! ahora a probar! Como es sabido, todo esto se encuentra <a href="http://develop.ignoranto.info/php/buscarparentesis.php" target="_blank">aquí</a>; lamentablemente por ahora no encuentro la manera de descargar el código PHP, pronto implementaré algun script para poder descargar el código PHP contenido en <a href="http://develop.ignoranto.info" target="_blank">develop.ignoranto.info</a>!</p>
]]></content:encoded>
			<wfw:commentRss>http://ignoranto.info/ricercando/buscar-parentesis-con-php/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Una Piramide con Métodos</title>
		<link>http://ignoranto.info/ricercando/una-piramide-con-metodos/</link>
		<comments>http://ignoranto.info/ricercando/una-piramide-con-metodos/#comments</comments>
		<pubDate>Tue, 07 Apr 2009 05:17:38 +0000</pubDate>
		<dc:creator>gerWare</dc:creator>
				<category><![CDATA[C#]]></category>
		<category><![CDATA[Programación]]></category>
		<category><![CDATA[Do Sostenido]]></category>
		<category><![CDATA[Funciones]]></category>
		<category><![CDATA[Métodos]]></category>

		<guid isPermaLink="false">http://codigo.ignoranto.info/?p=62</guid>
		<description><![CDATA[Aqui explicaré como podemos hacer esta gráfica en consola usando caracteres, espacios  y un bucle. La figura es la siguiente: x xxx xxxxx xxxxxxx Pues como vemos en la primera fila tenemos 3 espacios y 1 caracter, luego 2 espacios y 3 caracteres (sumamos 2 en caracteres), luego 1 espacio y 5 caracteres y por [...]]]></description>
			<content:encoded><![CDATA[<p>Aqui explicaré como podemos hacer esta gráfica en consola usando caracteres, espacios  y un bucle. La figura es la siguiente:</p>
<pre>   x
  xxx
 xxxxx
xxxxxxx</pre>
<p>Pues como vemos en la primera fila tenemos 3 espacios y 1 caracter, luego 2 espacios y 3 caracteres (sumamos 2 en caracteres), luego 1 espacio y 5 caracteres y por último tenemos 0 espacios (ninguno) y 7 caracteres!</p>
<p><strong>¿Cómo lo hacemos?</strong><br />
Primero necesitamos tener como base un número impar (cuyo módulo del número y 2 sea diferente de 0 (caso contrario sería par)) y luego creamos el algoritmo!</p>
<p>Trabajaremos con el número 7 y haremos una copia de Número como NN;</p>
<p><strong>Para la primera fila sería asi:</strong><br />
Espacios = Numero / 2;  (7/2 =3)<br />
Caracteres = NN &#8211; Espacios *2; (7 &#8211; 6 = 1)<br />
Numero = Numero -2;  (7-2 = 5)<br />
Imprimir Espacios, Imprimir caracteres! &gt;&gt; ___X</p>
<p><strong>Entonces nuesto bucle sería el siguiente:</strong></p>
<p>Mientras Numero sea mayor que 0 hacemos:<br />
Espacios = Numero / 2;<br />
Caracteres = Copia de Numero &#8211; Espacios *2;<br />
Numero = Numero -2;<br />
Imprimir espacios, Imprimir Caracteres</p>
<p>En C# sería asi:</p>
<pre>int esp, ch, tt = n, x = 0;
while (x &lt; n)
{
    esp = n / 2;
    ch = tt - (esp * 2);
    n = n - 2;
    espacio(esp);
    caract(ch);
    Console.WriteLine();
}</pre>
<p>Nuestras funciones &#8220;espacio()&#8221; y &#8220;caract()&#8221; serían las siguientes, lo único que hacen es imprimir la cantidad de espacios y caracteres según el valor de la variable recibida!</p>
<pre>void espacio(int x) //void, quiere decir que no devuelve valores
{
   int a; // declaramos a pero no le asignamos valor
   for (a = 0; a &lt; x; a++) // por que el bucle le dara un valor
   {
     Console.Write(" "); // cuantas veces 'a' sea menor que 'x'
   } // imprimiremos espacios en la consola!
}
void caract(int x) // no devolvemos valor!
{
   int a;
   for (a = 0; a &lt; x; a++) //bucle para cantidad de caracteres
   {
     Console.Write("x"); // imprimimos caracteres
   }
}</pre>
<p>Este código no puede mostrarse en funcionamiento (debido a que es C#) de todos modos encuentran el código (con las funciones de entrada de datos) listo para compilar en <a href="http://develop.ignoranto.info" target="_self">develop.ignoranto.info</a> en la sección de C#, o simplemente <a href="http://develop.ignoranto.info/csharp/piramide.cs" target="_blank">haciendo clic aquí!</a></p>
]]></content:encoded>
			<wfw:commentRss>http://ignoranto.info/ricercando/una-piramide-con-metodos/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
