13-kod~1, wisisz, wydzial informatyki, studia zaoczne inzynierskie, podstawy programowania, l2


/* Konwersja naturalnego kodu binarnego na kod Gray'a */

#include<stdio.h>

const size=4;

void pisz(int [], int);

void start(int [], int);

void next(int [], int);

void konwerter(int [], int);

void nkb(int []);

int main()

{

int a[size];

nkb(a);

return 0;

}

void pisz(int a[], int size)

{

for(int i=0;i<size;i++) printf("%d,",a[i]);

}

void start(int a[], int size)

{

int i;

printf(" NKB GRAYA\n\n");

for(i=0;i<size;i++)a[i]=0; // inicjalizacja tablicy

}

void next(int a[], int size) // cykliczny!

{

int i=size-1;

while(i>=0 && a[i]==1)

{

a[i]=0;

i--;

}

a[i]=1;

}

void konwerter(int a[], int size)

{

printf(" %d,",a[0]);

for(int i=1; i<size; i++)

printf("%d,", a[i-1]!=a[i]);

printf("\n");

}

void nkb(int a[])

{

int i;

start(a, size);

printf("%d : " ,0);

pisz(a, size);

konwerter(a,size);

for(i=1;i<10;i++)

{

next(a, size);

printf("%d : ", i);

pisz(a, size);

konwerter(a,size);

}

}

/*

NKB GRAYA

0 : 0,0,0,0, 0,0,0,0,

1 : 0,0,0,1, 0,0,0,1,

2 : 0,0,1,0, 0,0,1,1,

3 : 0,0,1,1, 0,0,1,0,

4 : 0,1,0,0, 0,1,1,0,

5 : 0,1,0,1, 0,1,1,1,

6 : 0,1,1,0, 0,1,0,1,

7 : 0,1,1,1, 0,1,0,0,

8 : 1,0,0,0, 1,1,0,0,

9 : 1,0,0,1, 1,1,0,1,

*/



Wyszukiwarka

Podobne podstrony:
12-kod~1, wisisz, wydzial informatyki, studia zaoczne inzynierskie, podstawy programowania, l2
11-nkb~1, wisisz, wydzial informatyki, studia zaoczne inzynierskie, podstawy programowania, l2
2-eukl~1, wisisz, wydzial informatyki, studia zaoczne inzynierskie, podstawy programowania, l2
1-algo~1, wisisz, wydzial informatyki, studia zaoczne inzynierskie, podstawy programowania, l2
2-eukl~1, wisisz, wydzial informatyki, studia zaoczne inzynierskie, podstawy programowania, l2
2-eukl~1, wisisz, wydzial informatyki, studia zaoczne inzynierskie, podstawy programowania, l2
2-eukl~1, wisisz, wydzial informatyki, studia zaoczne inzynierskie, podstawy programowania, l2
2-eukl~1, wisisz, wydzial informatyki, studia zaoczne inzynierskie, podstawy programowania, l2
6-konw~1, wisisz, wydzial informatyki, studia zaoczne inzynierskie, podstawy programowania, l2
2-eukl~1, wisisz, wydzial informatyki, studia zaoczne inzynierskie, podstawy programowania, l2
10-nat~1, wisisz, wydzial informatyki, studia zaoczne inzynierskie, podstawy programowania, l2
4-ciag~1, wisisz, wydzial informatyki, studia zaoczne inzynierskie, podstawy programowania, l2
6-konw~1, wisisz, wydzial informatyki, studia zaoczne inzynierskie, podstawy programowania, l2
8-konw~1, wisisz, wydzial informatyki, studia zaoczne inzynierskie, podstawy programowania, l2
5-zaga~1, wisisz, wydzial informatyki, studia zaoczne inzynierskie, podstawy programowania, l2
7-konw~1, wisisz, wydzial informatyki, studia zaoczne inzynierskie, podstawy programowania, l2
2-eukl~1, wisisz, wydzial informatyki, studia zaoczne inzynierskie, podstawy programowania, l2
2-eukl~1, wisisz, wydzial informatyki, studia zaoczne inzynierskie, podstawy programowania, l2

więcej podobnych podstron