« Suite de Conway » : différence entre les versions

Contenu supprimé Contenu ajouté
imported>Maksim
Ligne 83 :
}
?>
 
==== En C++ ====
 
Voici un bout de code écrit en C++ permettant d'afficher les n premières lignes de la suite de Conway. L'entier n est lu au clavier :
 
#include <iostream>
#include <list>
using namespace std;
template <typename T>
inline void echange(T & p1, T & p2)
{
T tmp;
tmp = p1;
p1 = p2;
p2 = tmp;
}
int main()
{
list <int> int_list;
list <int> int_list_temp;
list <int> * l = &int_list;
list <int> * ltemp = &int_list_temp;
l->push_back(1);
list <int>::iterator iter;
int temp = 0;
int counter = 0;
int n;
cin >> n;
cout << 1 << endl;
for (int i = 1; i < n; ++i)
{
ltemp->clear();
for (iter = l->begin(); iter != l->end(); counter = 0)
{
temp = *iter;
++counter;
++iter;
while ((iter != l->end()) && (*iter == temp))
{
++counter;
++iter;
}
cout << counter << temp;
ltemp->push_back(counter);
ltemp->push_back(temp);
}
cout << endl;
echange(l, ltemp);
}
return 0;
}
 
== Annexes ==