Partagez
Aller en bas
avatar
Arayashiki
Membre

Nombre de messages : 655
Age : 28
Localisation : Trois lettres me demangent. Oserai-je ?
Distinction : FUCKING nouveau dieu du mal. Gros connard en chef.
Date d'inscription : 18/08/2008

Petit jeu pour les mordus de code ...

le Mer 9 Fév 2011 - 22:27
Attention Attention !!!

Bienvenue ami scripteur, programmeur, web-master et tutti quenti,

Voici un petit jeu que je viens d'inventer, rien de bien folichon mais je pense qu'il y a matière à s'amuser et surtout à apprendre. Je compte évidement sur la participation active de tous les programmeurs avancés avec une bonne connaissance des diverses technologies et divers langages.

Voici le principe du jeu:

Une personne poste un morceau de code dans un certain langage et cite un autre langage. Le but du jeu est de trouver le langage, ce que fait ce morceau de code dans les grandes lignes.
Ensuite la personne doit réécrire ce code dans le langage spécifié dans le premier post.
Il est évident que vous ne devez pas écrire du code HTML et demander son équivalent en Ruby.

En gros les métalangages reste avec les métalangages, les langages objets avec les langages objets, etc ...

Voilà je commence et je commence simple. Très simple :

Code:

        private void Form1_Load(object sender, EventArgs e)
        {
            List<string> maListe = new List<string>();
            maListe.Add("BWAHAHAHAHAH !!! ");
            maListe.Add("Je suis votre dieu !!! ");
            maListe.Add("Et vous vous soumetterez à mon pouvoir !!!");
            string maPhrase = "";
            foreach (string s in maListe)
            {
                maPhrase += s;
            }
            MessageBox.Show(maPhrase);
        }


Et je veux le code équivalent en Java. Enjoy Very Happy
avatar
Berka
Administrateur

Nombre de messages : 1831
Age : 27
Localisation : Paris
Distinction : rubyste déglingué
9ème dan en scripting-no-jutsu

Nouveau Justine Beber ;P
Date d'inscription : 16/12/2007
http://rpgruby.olympe-network.com

Re: Petit jeu pour les mordus de code ...

le Mer 9 Fév 2011 - 23:56
Très bonne idée ce jeu Aray !

J'ai hésité à refaire la classe EventArgs. Ca risquait de faire trop d'import.
Comme java gère très mal les events, j'ai voulu faire simple.

Code:
import java.util.LinkedList;
import java.util.List;
import javax.swing.JOptionPane;
public class Form1_Load {
   public static void main(String [] args) {
      List<String> maListe = new LinkedList<String>();
      String maPhrase = " ";
      maListe.add("BWAHAHAHAHAH !!! ");
      maListe.add("Je suis votre dieu !!! ");
      maListe.add("Et vous vous soumetterez à mon pouvoir !!!");
      for(String s : maListe) {
         maPhrase = maPhrase + s;
      }
      JOptionPane.showMessageDialog(null, maPhrase);
   }
}
avatar
Arayashiki
Membre

Nombre de messages : 655
Age : 28
Localisation : Trois lettres me demangent. Oserai-je ?
Distinction : FUCKING nouveau dieu du mal. Gros connard en chef.
Date d'inscription : 18/08/2008

Re: Petit jeu pour les mordus de code ...

le Jeu 10 Fév 2011 - 1:15
Bien joué berka mais j'attends encore le langage que j'ai utilisé x)
avatar
Berka
Administrateur

Nombre de messages : 1831
Age : 27
Localisation : Paris
Distinction : rubyste déglingué
9ème dan en scripting-no-jutsu

Nouveau Justine Beber ;P
Date d'inscription : 16/12/2007
http://rpgruby.olympe-network.com

Re: Petit jeu pour les mordus de code ...

le Jeu 10 Fév 2011 - 1:39
Du C#.net, non ?
avatar
Arayashiki
Membre

Nombre de messages : 655
Age : 28
Localisation : Trois lettres me demangent. Oserai-je ?
Distinction : FUCKING nouveau dieu du mal. Gros connard en chef.
Date d'inscription : 18/08/2008

Re: Petit jeu pour les mordus de code ...

le Jeu 10 Fév 2011 - 1:40
Yep exactement. A toi !!!
avatar
XakuX
Membre

Nombre de messages : 1263
Age : 23
Localisation : là où tu n'auras jamais l'idée de chercher !
Distinction : * Bougre d'âne


Le bizu' à son Coco'
[Coco' Smile]

Membre aux désirs inassouvis de domination mondiale. [Maître du destin]
Date d'inscription : 13/12/2008

Re: Petit jeu pour les mordus de code ...

le Jeu 10 Fév 2011 - 20:55
Amusez-vous bien tout les deux
J'attends le Ruby pour voir, mais j'y crois pas trop XD
avatar
Arayashiki
Membre

Nombre de messages : 655
Age : 28
Localisation : Trois lettres me demangent. Oserai-je ?
Distinction : FUCKING nouveau dieu du mal. Gros connard en chef.
Date d'inscription : 18/08/2008

Re: Petit jeu pour les mordus de code ...

le Jeu 10 Fév 2011 - 21:19
Bah tu sais Xak' dans les langages objets, une fois que tu connais la syntaxe d'un seul les autres c'est une formalité de connaitre leur syntaxe. La grosse différence c'est la bibliothèque de fonction fourni par le language (les frameworks .Net pour C# par exemple). Franchement lance toi y aura rien de bien difficile. M'enfin pour le moment nyark !!!

Sinon berka c'est toujours à toi de lancer le prochain morceau de code x).
avatar
Berka
Administrateur

Nombre de messages : 1831
Age : 27
Localisation : Paris
Distinction : rubyste déglingué
9ème dan en scripting-no-jutsu

Nouveau Justine Beber ;P
Date d'inscription : 16/12/2007
http://rpgruby.olympe-network.com

Re: Petit jeu pour les mordus de code ...

le Jeu 10 Fév 2011 - 22:37
Hop, voilà un petit bout de code dans un langage de programmation hyper bien dont je tairai le nom.
La conversion va être plus complexe qu'il n'y parait:
- nombre de paramètres indéfini
- méthode join mal supportée par le langage
- boucles peu efficaces dans ce meme nouveau langage

Je veux ce code en php Laughing.

Code:
class Beautifuler
   def go(*parametre)
      str = parametre.join(": ")
      str.gsub!("Ruby","PhP")
      str.gsub!("meilleur","pire")
      array = str.split(" ")
      array.each_index{ |index|
         array[index].capitalize!
      }
      print(array.join(" "))
   end
end

bf = Beautifuler.new
bf.go("Ruby", "c'est le meilleur langage qui existe !")
avatar
Arayashiki
Membre

Nombre de messages : 655
Age : 28
Localisation : Trois lettres me demangent. Oserai-je ?
Distinction : FUCKING nouveau dieu du mal. Gros connard en chef.
Date d'inscription : 18/08/2008

Re: Petit jeu pour les mordus de code ...

le Ven 11 Fév 2011 - 14:38
Alors en premier tu as utilisé du Ruby ... Pas trop dur x).

Ensuite ton code définit une classe qui contient la fonction go(). La fonction go permet de rassembler les divers paramètres avec ": ", de chercher les strings "Ruby" et "meilleurs" et de les remplacer par "Php" et "pire", de mettre la première lettre de tout les mots en majuscule et enfin de le printer.

Pour les solutions en PhP j'en ai trouvé deux.
Voici le premier code avec une boucle foreach :
Spoiler:

Code:

<?php
class Beautifuler
{
   function go()
   {
      $str = func_get_args();
      $strImploded = implode(": ", $str);
      $search = array("Ruby","meilleur");
      $replace = array("PhP","pire");
      $strChanged = str_replace($search, $replace, $strImploded);
      $strExploded = explode(" ", $strChanged);
      $strUpperCased = array();
      foreach($strExploded as $k => $v)
      {
         $strUpperCased[$k] = ucfirst($v);
      }
      echo implode(" ", $strUpperCase);
   }
}

$bf = new Beautifuler();
$bf->go("Ruby", "c'est le meilleur langage qui existe !");
?>

Et voici le deuxième code sans boucle foreach :
Spoiler:
Code:
<?php
class Beautifuler
{
   function go()
   {
      $str = func_get_args();
      $strImploded = implode(": ", $str);
      $search = array("Ruby","meilleur");
      $replace = array("PhP","pire");
      $strChanged = str_replace($search, $replace, $strImploded);
      echo ucwords($strChanged);
   }
}

$bf = new Beautifuler();
$bf->go("Ruby", "c'est le meilleur langage qui existe !");
?>

Tester et fonctionnel pour les deux
avatar
Berka
Administrateur

Nombre de messages : 1831
Age : 27
Localisation : Paris
Distinction : rubyste déglingué
9ème dan en scripting-no-jutsu

Nouveau Justine Beber ;P
Date d'inscription : 16/12/2007
http://rpgruby.olympe-network.com

Re: Petit jeu pour les mordus de code ...

le Sam 12 Fév 2011 - 0:38
Ok ! Je ferai du bas niveau pour la prochaine fois Wink
avatar
Arayashiki
Membre

Nombre de messages : 655
Age : 28
Localisation : Trois lettres me demangent. Oserai-je ?
Distinction : FUCKING nouveau dieu du mal. Gros connard en chef.
Date d'inscription : 18/08/2008

Re: Petit jeu pour les mordus de code ...

le Sam 12 Fév 2011 - 15:20
Tant que c'est pas de l'assembleur x). Je laisse ma place à quiconque veut se lancer (excepté berka évidement).
Et puis si demain y a rien ... bah je prendrais mon tour x).

EDIT: Bon bah toujours rien donc voilà un morceaux de codes :


Code:
<xs:schema id="SchemaDonnee"
    targetNamespace="SchemaDonnee"
    elementFormDefault="qualified"
    xmlns="SchemaDonnee"
    xmlns:xs="http://www.w3.org/2001/XMLSchema"
>

  <xs:element name="donnee">
    <xs:complexType>
      <xs:sequence minOccurs="1" maxOccurs="1">
        <xs:element name="produits">
          <xs:complexType>
            <xs:sequence minOccurs="1" maxOccurs="1">
              <xs:element name="pizzas">
                <xs:complexType>
                  <xs:sequence minOccurs="1" maxOccurs="unbounded">
                    <xs:element name="pizza" type="TypePizza"/>
                  </xs:sequence>
                </xs:complexType>
              </xs:element>
              <xs:element name="entrees">
                <xs:complexType>
                  <xs:sequence minOccurs="1" maxOccurs="unbounded">
                    <xs:element name="entree" type="TypeEntree"/>
                  </xs:sequence>
                </xs:complexType>
              </xs:element>
              <xs:element name="desserts">
                <xs:complexType>
                  <xs:sequence minOccurs="1" maxOccurs="unbounded">
                    <xs:element name="dessert" type="TypeDessert"/>
                  </xs:sequence>
                </xs:complexType>
              </xs:element>
              <xs:element name="menus">
                <xs:complexType>
                  <xs:sequence minOccurs="1" maxOccurs="unbounded">
                    <xs:element name="menu" type="TypeMenu"/>
                  </xs:sequence>
                </xs:complexType>
              </xs:element>
            </xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name="clients">
          <xs:complexType>
            <xs:sequence minOccurs="1" maxOccurs="unbounded">
              <xs:element name="client" type="TypeClient"/>
            </xs:sequence>
          </xs:complexType>
        </xs:element>
      </xs:sequence>
    </xs:complexType>
  </xs:element>

  <xs:complexType name="TypeClient">
    <xs:attribute name="nomClient" type="xs:string"/>
    <xs:attribute name="numTelClient">
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:pattern value="[0-9]{10}"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
    <xs:attribute name="clientSupprimer" type="xs:boolean" default="false"/>
  </xs:complexType>
  <xs:complexType name="TypePizza">
    <xs:attribute name="nomPizza" type="xs:string"/>
    <xs:attribute name="prixPizza" type="xs:float"/>
    <xs:attribute name="pizzaSupprimer" type="xs:boolean" default="false"/>
  </xs:complexType>
  <xs:complexType name="TypeEntree">
    <xs:attribute name="nomEntree" type="xs:string"/>
    <xs:attribute name="prixEntree" type="xs:float"/>
    <xs:attribute name="entreeSupprimer" type="xs:boolean" default="false"/>
  </xs:complexType>
  <xs:complexType name="TypeDessert">
    <xs:attribute name="nomDessert" type="xs:string"/>
    <xs:attribute name="prixDessert" type="xs:float"/>
    <xs:attribute name="dessertSupprimer" type="xs:boolean" default="false"/>
  </xs:complexType>
  <xs:complexType name="TypeMenu">
    <xs:attribute name="nomMenu" type="xs:string"/>
    <xs:attribute name="prixMenu" type="xs:float"/>
    <xs:attribute name="menuSupprimer" type="xs:boolean" default="false"/>
  </xs:complexType>
</xs:schema>

Et je veux le script SQL qui crée la structure de BDD équivalent.
Contenu sponsorisé

Re: Petit jeu pour les mordus de code ...

Revenir en haut
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum