Program C++ : Membuat Spiral Matrix
kemaren ada yang reques program mebuat spiral matrix yang outputnya :
1 2 3 4 5
16 17 18 19 6
15 24 25 20 7
14 23 22 21 8
13 12 11 10 9
ga sengaja iseng-iseng googling, eh nemu syntax coding yang mirip. Tapi belum nemu, bagaimana cara menginputkan dari user. Kalau ada yang bisa, share di sini yak.
Untuk sementara saya share coding yang sudah di tentukan oleh program, kalau inputan yang di berikan adalah 5.
Refrensi:
http://www.cplusplus.com/forum/general/4868/
1 2 3 4 5
16 17 18 19 6
15 24 25 20 7
14 23 22 21 8
13 12 11 10 9
ga sengaja iseng-iseng googling, eh nemu syntax coding yang mirip. Tapi belum nemu, bagaimana cara menginputkan dari user. Kalau ada yang bisa, share di sini yak.
Untuk sementara saya share coding yang sudah di tentukan oleh program, kalau inputan yang di berikan adalah 5.
#include <iostream.h>
#include <conio.h>
void main()
{
int d[5][5]; //angka 5 bisa di ganti
int start = 1;
int count = start;
for (int i=0; i<5; i++) {
// pengaturan bagian atas
for (int j=i; j<5-i; j++)
d[i][j] = count++;
count--;
// pengaturan bagian kanan
for (int j=i; j<5-i; j++)
d[j][5-i-1] = count++;
count--;
// pengaturan bagian bawah
for (int j=5-i-1; j>=i; j--)
d[5-i-1][j] = count++;
count--;
// pengaturan bagian kiri
for (int j=5-i-1; j>i; j--)
d[j][i] = count++;
if (count > 5*5+start)
break;
}
for (int i=0; i<5; i++) {
for (int j=0; j<5; j++) {
cout << d[i][j] << " ";
}
cout << endl;
}
getch();
}
#include <conio.h>
void main()
{
int d[5][5]; //angka 5 bisa di ganti
int start = 1;
int count = start;
for (int i=0; i<5; i++) {
// pengaturan bagian atas
for (int j=i; j<5-i; j++)
d[i][j] = count++;
count--;
// pengaturan bagian kanan
for (int j=i; j<5-i; j++)
d[j][5-i-1] = count++;
count--;
// pengaturan bagian bawah
for (int j=5-i-1; j>=i; j--)
d[5-i-1][j] = count++;
count--;
// pengaturan bagian kiri
for (int j=5-i-1; j>i; j--)
d[j][i] = count++;
if (count > 5*5+start)
break;
}
for (int i=0; i<5; i++) {
for (int j=0; j<5; j++) {
cout << d[i][j] << " ";
}
cout << endl;
}
getch();
}
Refrensi:
http://www.cplusplus.com/forum/general/4868/
wah mantep gan thx ya bwt codingan nya.. bisa jadi inspirasi nih bwt tgs ane.. (yaah tugasnya mirip si) :d: arigatou gozaimasu :d:
BalasHapusgan ane nemu caranya input dari user:
BalasHapus----------------------------------------
#include
#include
void main()
{
int n;
int d[100][100]; //angka 100 bisa di ganti
int start = 1;
int count = start;
cout<<"masukan data : ";cin>>n;
for (int i=0; i=i; j--)
d[n-i-1][j] = count++;
count--;
// pengaturan bagian kiri
for (int j=n-i-1; j>i; j--)
d[j][i] = count++;
if (count > n*n+start)
break;
}
for (int i=0; i<n; i++) {
for (int j=0; j<n; j++) {
cout << d[i][j] << " ";
}
cout << endl;
}
getch();
}
thanks gan.. ntar ane posting biar nambah arsip nie blog hehhee :g:
BalasHapusgimana cara membuat bentuk segiitiga sama kaki, sembarang juga belah ketupat tapi dengan meggunakan angaka 1 s/d 10.
BalasHapus