<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="gl">
	<id>http://web.iesrodeira.com/mediawiki/index.php?action=history&amp;feed=atom&amp;title=Fundamentos%3ASoluci%C3%B3ns%3AReversi</id>
	<title>Fundamentos:Solucións:Reversi - Historial de revisións</title>
	<link rel="self" type="application/atom+xml" href="http://web.iesrodeira.com/mediawiki/index.php?action=history&amp;feed=atom&amp;title=Fundamentos%3ASoluci%C3%B3ns%3AReversi"/>
	<link rel="alternate" type="text/html" href="http://web.iesrodeira.com/mediawiki/index.php?title=Fundamentos:Soluci%C3%B3ns:Reversi&amp;action=history"/>
	<updated>2026-09-13T14:05:38Z</updated>
	<subtitle>Historial de revisións desta páxina no wiki</subtitle>
	<generator>MediaWiki 1.43.9</generator>
	<entry>
		<id>http://web.iesrodeira.com/mediawiki/index.php?title=Fundamentos:Soluci%C3%B3ns:Reversi&amp;diff=1947&amp;oldid=prev</id>
		<title>Xavi: Nova páxina: &quot;Escribir un programa que permita a dous xogadores xogar o popular xogo &#039;&#039;Reversi&#039;&#039;, tamén coñecido como &#039;&#039;Iagno&#039;&#039;.  ----  =Solucións de Xavi=  ==Makefile== Ficheiro de construc...&quot;</title>
		<link rel="alternate" type="text/html" href="http://web.iesrodeira.com/mediawiki/index.php?title=Fundamentos:Soluci%C3%B3ns:Reversi&amp;diff=1947&amp;oldid=prev"/>
		<updated>2014-06-26T11:22:34Z</updated>

		<summary type="html">&lt;p&gt;Nova páxina: &amp;quot;Escribir un programa que permita a dous xogadores xogar o popular xogo &amp;#039;&amp;#039;Reversi&amp;#039;&amp;#039;, tamén coñecido como &amp;#039;&amp;#039;Iagno&amp;#039;&amp;#039;.  ----  =Solucións de Xavi=  ==Makefile== Ficheiro de construc...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Páxina nova&lt;/b&gt;&lt;/p&gt;&lt;div&gt;Escribir un programa que permita a dous xogadores xogar o popular xogo &amp;#039;&amp;#039;Reversi&amp;#039;&amp;#039;, tamén coñecido como &amp;#039;&amp;#039;Iagno&amp;#039;&amp;#039;.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=Solucións de Xavi=&lt;br /&gt;
&lt;br /&gt;
==Makefile==&lt;br /&gt;
Ficheiro de construcción do programa. &lt;br /&gt;
*Para construir a versión GUI: &amp;#039;&amp;#039;&amp;#039;$make&amp;#039;&amp;#039;&amp;#039; ou &amp;#039;&amp;#039;&amp;#039;$make reversigtk&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
*Para construir a versión de Consola: &amp;#039;&amp;#039;&amp;#039;$make reversi&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Podes [http://web.iesrodeira.com/Descargas/Exercicios/Reversi/Makefile Descargar] o Makefile&lt;br /&gt;
&lt;br /&gt;
&amp;lt;c&amp;gt;&lt;br /&gt;
FLAGS = `pkg-config --cflags --libs libglade-2.0`&lt;br /&gt;
FLAGSC = `pkg-config --cflags libglade-2.0`&lt;br /&gt;
&lt;br /&gt;
reversigtk: reversigtk.c reversilib.o tablero.o&lt;br /&gt;
        gcc reversigtk.c -o reversigtk reversilib.o tablero.o $(FLAGS) -export-dynamic&lt;br /&gt;
reversi: reversi.c reversilib.o&lt;br /&gt;
        gcc reversi.c -o reversi reversilib.o&lt;br /&gt;
tablero.o: tablero.c&lt;br /&gt;
        gcc -c tablero.c $(FLAGSC) -export-dynamic&lt;br /&gt;
reversilib.o: reversilib.c&lt;br /&gt;
        gcc -c reversilib.c&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/c&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Versión de Consola==&lt;br /&gt;
==== Pseudocódigo ====&lt;br /&gt;
&amp;lt;c&amp;gt;&lt;br /&gt;
 Comeza xogando xog=Xogador 1&lt;br /&gt;
&lt;br /&gt;
 Principal&lt;br /&gt;
   Limpar Taboleiro (posición inicial)&lt;br /&gt;
   Visualizar o Taboleiro&lt;br /&gt;
   xog=Xogador 1&lt;br /&gt;
   Mentras se poda poñer ficha&lt;br /&gt;
      Xoga(xog)&lt;br /&gt;
      Si xog==Xogador 1 xog=Xogador 2&lt;br /&gt;
      senon  		xog=Xogador 1&lt;br /&gt;
      Visualizar o Taboleiro&lt;br /&gt;
   Fin Mentras&lt;br /&gt;
   Ver gañador e visualizar quen gañou&lt;br /&gt;
 Fin-Principal&lt;br /&gt;
&lt;br /&gt;
 Xoga(x)&lt;br /&gt;
 RECIBE: O xogador que lle toca xogar&lt;br /&gt;
 &lt;br /&gt;
   Si pode xogar o xogador x&lt;br /&gt;
     Pedir unha fila e columna válida&lt;br /&gt;
     Poñer a ficha&lt;br /&gt;
     Dar volta as fichas&lt;br /&gt;
   Fin-Si&lt;br /&gt;
 Fin-Xoga  &lt;br /&gt;
&lt;br /&gt;
&amp;lt;/c&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Implementación en C ====&lt;br /&gt;
&lt;br /&gt;
===== [[Fundamentos:Solucións:Reversi:reversi.h|Ficheiro de Cabeceira Xeral]] - (Definicións Xerais) =====&lt;br /&gt;
&lt;br /&gt;
===== [[Fundamentos:Solucións:Reversi:reversi.c|Módulo principal]] - (Funcións exclusivas da versión de consola) =====&lt;br /&gt;
&lt;br /&gt;
===== [[Fundamentos:Solucións:Reversi:reversilib.c|Librería de Xogo]] - (Funcións de manexo do xogo comúns coa versión GTK) =====&lt;br /&gt;
&lt;br /&gt;
==Versión GTK+==&lt;br /&gt;
E preciso ter a versión 2.8 das Gtk para que funcione o diálogo de &amp;#039;&amp;#039;acerca de..&amp;#039;&amp;#039;. Si non se ten o GTK+ 2.8 é necesario comentar as liñas&lt;br /&gt;
&amp;lt;c&amp;gt;&lt;br /&gt;
 d=(GtkFileChooser *)glade_xml_get_widget(__gui,&amp;quot;gardar&amp;quot;);&lt;br /&gt;
 gtk_file_chooser_set_do_overwrite_confirmation(d,TRUE);&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/c&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Na función &amp;#039;&amp;#039;main&amp;#039;&amp;#039;.&lt;br /&gt;
&lt;br /&gt;
==== Interface ====&lt;br /&gt;
===== [http://web.iesrodeira.com/Descargas/Exercicios/tablero.glade Descargar GUI] (ficheiro xml tablero.glade)=====&lt;br /&gt;
===== [http://web.iesrodeira.com/Descargas/Exercicios/reversipngs.zip Descargar Debuxos] (Descomprimir na carpeta do programa)=====&lt;br /&gt;
&lt;br /&gt;
==== Pseudocódigo ====&lt;br /&gt;
&amp;lt;c&amp;gt;&lt;br /&gt;
  Cando se faga click co rato nunha casilla (xestor de on_button_press_event)&lt;br /&gt;
     Obter as coordenadas do click (fila e columna)&lt;br /&gt;
     Si o xogador que lle toca pode xogar nesa posicion&lt;br /&gt;
        Poñer a ficha na posición&lt;br /&gt;
        Dar volta as fichas&lt;br /&gt;
        Cambio de xogador&lt;br /&gt;
        Si xa non existen xogadas, diálogo de finalización&lt;br /&gt;
        SiNon&lt;br /&gt;
          Se o xogador que lle toca non ten xogada, cambio de xogador&lt;br /&gt;
        Fin-Si&lt;br /&gt;
     Fin-Si&lt;br /&gt;
&amp;lt;/c&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Implementación en C ====&lt;br /&gt;
===== [[Fundamentos:Solucións:Reversi:reversi.h|Ficheiro de Cabeceira Xeral]] - (Definicións Xerais) =====&lt;br /&gt;
===== [[Fundamentos:Solucións:Reversi:reversilib.c|Librería de Xogo]] - (Funcións de manexo do xogo comúns coa versión de consola) =====&lt;br /&gt;
===== [[Fundamentos:Solucións:Reversi:tablero.c|Manexo Xeral do GUI]] - (Funcións de manexo do gui válidos para outros xogos) =====&lt;br /&gt;
===== [[Fundamentos:Solucións:Reversi:reversigtk.c|Principal]] - (Ficheiro Principal) =====&lt;/div&gt;</summary>
		<author><name>Xavi</name></author>
	</entry>
</feed>