Thursday, 10 April 2014

Program Menghitung Tarif Travel Bus Bahasa C


Berikut ini program untuk berlatih percabangan dengan IF. pengguna akan memilih kota tujuan "jakarta" atau "solo" dan memilih kelas "eksekutif" atau "ekonomi"

Tampilan Program :

Jgn lupa tinggalkan komentar dan +1 nya yah.

add fb : Lutfi Febriandita Basuki

Source Code :
----------------------------------------------------------------------------------------------------

#include <stdio.h>
#include <stdlib.h>

 char jurusan [21];
 char kelas [21];
 int harga;

 int main(int argc, char *argv[]) {
  printf("Masukkan Kota Tujuan Anda : "); fflush(stdin); gets(jurusan);

  if((strstr(jurusan,"jakarta"))||(strstr(jurusan,"Jakarta")))
   {
    printf("Masukkan Kelas Pilihan Anda : "); fflush(stdin); gets(kelas);
    if(strstr(kelas,"eksekutif"))
    {
    printf("-----------------------\n");
  printf("Jurusan : Jakarta\n");
  printf("Kelas : Eksekutif\n");
    printf("Harga : Rp.50.000,-\n");
}
    else if(strstr(kelas,"ekonomi"))
    {
     printf("------------------------\n");
    printf("Jurusan : Jakarta\n");
    printf("Kelas : Ekonomi\n");
    printf("Harga : Rp.25.000,-\n");
}
else
{
printf("\n----Kelas Salah----");
}
}
   else if((strstr(jurusan,"solo"))||(strstr(jurusan,"Solo")))
    {
printf("Masukkan Kelas Pilihan Anda : "); fflush(stdin); gets(kelas);
if(strstr(kelas,"eksekutif"))
{
printf("------------------------\n");
printf("Jurusan : Solo\n");
printf("Kelas : eksekutif\n");
printf("Harga : Rp.100.000,-\n");
}
else if(strstr(kelas,"ekonomi"))
{
printf("-----------------------\n");
printf("Jurusan : Solo\n");
printf("Kelas : Ekonomi\n");
printf("Harga : Rp.50.000,-\n");
}
else
{
printf("\n----Kelas Salah----");
}
}
else
{
printf("\nKota Tujuan Tidak Tersedia");
}

return 0; }


Program tree preorder inorder postorder Bahasa C


Program Tree tentang preorder postorder dan inorder.
tampilannya :












jgn lupa tinggalkan kometar yah. add FB :

https://www.facebook.com/lutfi.brown

berikut ini codingnya :
----------------------------------------------------------------------------------------

#include <stdio.h>
#include <malloc.h>

struct node {
    struct node *left;
    char info;
    struct node *right;
};

typedef struct node NODE;
typedef NODE P;



NODE *NodeBaru(char item) {
    NODE*n;
    n = (NODE*) malloc(sizeof(NODE));
    if(n != NULL) {
        n->info = item;
        n->left = NULL;
        n->right = NULL;
    }
    return n;
}

void crP(P **T) {
    *T = NULL;
}
typedef enum { FALSE = 0, TRUE = 1} BOOL;

BOOL PK(P *T) {
    return((BOOL)(T == NULL));
}
void TambahNode(NODE **p, char item) {
    NODE *n;
    n = NodeBaru(item);
*p = n;
}
void preOrder(P *T) {
    if(!PK(T)) {
        printf("%c ", T->info);
        preOrder(T->left);
        preOrder(T->right);
    }
}
void inOrder(P *T) {
    if(!PK(T)) {
        inOrder(T->left);
        printf("%c ", T->info);
        inOrder(T->right);
    }
}
void postOrder(P *T) {
    if(!PK(T)) {
        postOrder(T->left);
        postOrder(T->right);
        printf("%c ", T->info);
    }
}

int main()
{
    P *a;
    char b;
    crP(&a);
    TambahNode(&a, b = 'a');
    TambahNode(&a->left, b = 'b');
    TambahNode(&a->left->right, b = 'd');
    TambahNode(&a->right, b = 'e');
    TambahNode(&a->right->right, b = 'f');
    TambahNode(&a->right->right->left, b = 'c');
    printf("Tampilan secara PreOrder: ");
    preOrder(a);
    printf("\nTampilan secara InOrder: ");
    inOrder(a);
    printf("\nTampilan secara PostOrder: ");
    postOrder(a);
    printf("\n\n");

getch();
}


---------------------------------------------THANK YOU------------------------------

Program data mahasiswa (Pascal)


Program data mahasiswa. memakai array of record. untuk lebih jelasnya compile saja kode dibawah ini. pakai aplikasi Dev-PASCAL yah.. Tampilannya seperti ini :



kalau ada yang perlu ditanyakan, langsung coment di bawah atau lewat FB :

https://www.facebook.com/lutfi.brown

Kalau bisa programnya dibenerin n dikembangin yah. terus kirim lewat fb diatas :D

Nih langsung copy ajah Source Code nya :
----------------------------------------------------------------------------------------

Program Mahasiswa;
uses crt;

const
     MaksData = 20;
     MaksNilai = 3;
Type
    TNilai = record
            matkul : string;
            uts : integer;
            uas : integer;
            end;
      //aray of TNilai
      DataNilai = array[1..MaksNilai] of TNilai;

    TMhs  = record
            nim : string;
            nama : string;
            nilai : DataNilai;
            n_akhir: real;
            end;
    //array of TMhs
    DataMhs = array [1..MaksData] of TMhs;
var
   Data : DataMhs;
   jumlah_data : integer;
   menu : integer;
{------------------------------------------------------------------------------}
      procedure tambahNilaiMhs(var nilai:DataNilai);
      var
         i : integer;
      begin
          for i:=1 to MaksNilai do       // karena MaksNilai = 3 maka akan ada 3 Datanilai yang diinput
          begin
              writeln();
              writeln('======================================');
              write('  Nama Mata Kuliah : ');readln(nilai[i].matkul);
              write('  Nilai UTS        : ');readln(nilai[i].uts);
              write('  Nilai UAS        : ');readln(nilai[i].uas);

          end;
          writeln();
          writeln('selesai... ');
      end;
{------------------------------------------------------------------------------}
      procedure inputData(index : integer;var DMhs:DataMhs);
      var
         pilih : char;
      begin
           write(' NIM    :');readln(DMhs[index].nim);
           write(' Nama   :');readln(DMhs[index].nama);

           repeat
           writeln();
           write('Mau masukan nilai ? [y/t] '); readln(pilih);
           until((pilih = 'y') or (pilih = 't'));         // jika pilih = 'y' maka akan memanggil prosedur tambahNilaiMhs
           writeln();

           if (pilih = 'y') then
                tambahNilaiMhs(DMhs[index].nilai);       //memanggil prosedur tambahNilaiMhs
           writeln('silahkan tekan sembarangan tombol untuk melanjutkan...');
      end;
{------------------------------------------------------------------------------}
   procedure isiDataMahasiswa(var DMhs:DataMhs);
   // Digunakan untuk mengisi data Mahasiswa pertama sampai jumlah_data yg diinputkan
   var
      i : integer;

   begin
   clrscr;
        for i:=1 to jumlah_data do      // terjadi perulangan dari 1 sampai jumlah_data
        begin
           writeln('Jumlah data maksimum adalah ',MaksData,' dan Array Data yang digunakan ',jumlah_data);
           writeln();
           writeln('Masukan Data Mahasiswa ke-',i);
           writeln();

              inputData(i,DMhs);     // memanggil prosedur inputData
           readkey;
        end;
   end;
{------------------------------------------------------------------------------}
  Procedure ubahDataMahasiswa(var DMhs:DataMhs);
   //  digunakan untuk me-replace data yang sudah ada sebelum nya sesuai indeks yang dimasukkan
   var
      index,i : integer;

   begin
   clrscr;

       repeat   // jika indeks yang dimasukkan lebih dari jumlah_data maka akan mengulang hingga indeks yang dimasukkan tepat

        write('Masukan index data mahasiswa yang ingin di rubah : ');readln(index);

       until(index<=jumlah_data);

           writeln('Data Mahasiswa ke-',index);       //menampilkan data mahasiswa yang indeks nya dimasukkan
           writeln();
           writeln(' NIM    :',DMhs[index].nim);
           writeln(' Nama   :',DMhs[index].nama);
           writeln();

           if(DMhs[index].nilai[1].uts <> 0) then     // jika mahasiswa memiliki nilai maka akan ditampilkan
           begin
            for i :=1 to MaksNilai do
            begin

               writeln('Nilai     : ');
               writeln(' Matkul   :',DMhs[index].nilai[i].matkul);
               writeln(' Nilai UTS:',DMhs[index].nilai[i].uts);
               writeln(' Nilai UTS:',DMhs[index].nilai[i].uas);
               writeln('=====================================');

            end;

           end;
           writeln();
           writeln('=================================');
           writeln(' Silahkan masukan data yang baru');
           writeln('=================================');
           inputData(index,DMhs);                // memanggil prosedur inputData untuk mengisi data pengganti
           readkey;

   end;
{-----------------------------------------------------------------------------}
   procedure SelectionDataMahasiswa(var DMhs:DataMhs);
   {digunakan untuk melihat data mahasiswa yang diinputkan indeks nya}
    var
      index,i : integer;

   begin
     clrscr;
       repeat
             write('Masukan index data mahasiswa yang ingin di lihat : ');readln(index);     // input indeks

       until(index <= jumlah_data);

           writeln('Data Mahasiswa ke-',index);  // menampilkan data
           writeln();
           writeln(' NIM    :',DMhs[index].nim);
           writeln(' Nama   :',DMhs[index].nama);
           writeln();

           if(DMhs[index].nilai[1].uts <> 0) then     // menampilkan nilai jika terdapat data nilai
           begin
            for i :=1 to MaksNilai do  // maksNilai = 3
            begin

               writeln('Nilai     : ');
               writeln(' Matkul   :',DMhs[index].nilai[i].matkul);
               writeln(' Nilai UTS:',DMhs[index].nilai[i].uts);
               writeln(' Nilai UTS:',DMhs[index].nilai[i].uas);
               writeln('=====================================');

            end;
           end;
   readkey;
   end;
{---------------------------------------------------------------------------}
Procedure cari(var Dmhs: DataMhs);
{User menginput NIM yg yang akan dicari}
{Prosedur ini akan menelusuri data dari pertama sampai akhir, dan akan mencocok kan NIM inputan dengan NIM data mahasiswa,
apabila NIM ditemukan maka data akan ditampilkan, jika NIM tidak cocok maka akan muncul Pemberithuan "Tidak Cocok"}
var
   i:integer;
   nimcari:string;

begin
clrscr;

       writeln('Cari Mahasiswa berdasarkan NIM : ');
       writeln('=================================');
       writeln('Masukkan Nim Mahasiswa yang Anda Cari : ');read(nimcari);

for i:= 1 to jumlah_data do
    begin
    if (DMhs[i].nim = nimcari) then    //jika cocok maka akan terjadi proses berikut:
    begin
         writeln('=============================');
         writeln('Data mahasiswa ke-',i,' cocok');
         writeln(' Mahasiswa ke-',i);
         writeln(' NIM    :',DMhs[i].nim);
         writeln(' Nama   :',DMhs[i].nama);
         writeln();
         if(DMhs[i].nilai[1].uts <> 0) then
           begin
            for i :=1 to MaksNilai do
            begin

               writeln('=============================');
               writeln(' Nilai    : ');
               writeln(' Matkul   :',DMhs[i].nilai[i].matkul);
               writeln(' Nilai UTS:',DMhs[i].nilai[i].uts);
               writeln(' Nilai UTS:',DMhs[i].nilai[i].uas);
               writeln('=====================================');

            end;
           end;
    end
    else            //jika NIM tidak cocok
    writeln('Data mahasiswa ke-',i,' tidak cocok');

end;
readln;
readln;
end;
{----------------------------------------------------------------------------}
procedure tampildata(var Dmhs: DataMhs);
// untuk menampilkan semua data NIM dan Nama dari data pertama sampai akhir
var
i:integer;

begin
clrscr;
writeln(' Tampil data Mahasiswa ');
writeln('=================================');


for i:= 1 to jumlah_data do
    begin
         writeln(' Mahasiswa ke-',i);
         writeln(' NIM    :',DMhs[i].nim);
         writeln(' Nama   :',DMhs[i].nama);
         writeln();
         if(DMhs[i].nilai[1].uts <> 0) then
           begin
            for i :=1 to MaksNilai do
            begin

               writeln('Nilai     : ');
               writeln(' Matkul   :',DMhs[i].nilai[i].matkul);
               writeln(' Nilai UTS:',DMhs[i].nilai[i].uts);
               writeln(' Nilai UTS:',DMhs[i].nilai[i].uas);
               writeln('=====================================');

            end;
           end;
end;
readln;
end;
{----------------------------------------------------------------------------}
Procedure HapusData(index : integer;var DMhs:DataMhs);
{menghapus data mahasiswa yg dimasukkan indeks nnya}
      var
         pilih : char;
      begin
      repeat
           writeln();
           write('Mau Hapus data ? [y/t] '); readln(pilih); // validasi apakah benar akan menghapus
      until((pilih = 'y') or (pilih = 't'));
      if (pilih = 'y') then    //jika pilih y maka akan hapus data
      begin
           writeln();
           DMhs[index].nim:='';   // mengubah data menjadi NULL
           DMhs[index].nama:='';  // mengubah data menjadi NULL






      end;
      end;
 {----------------------------------------------------------------------------}
 Procedure HapusDataMahasiswa(var DMhs:DataMhs);
 {untuk menginput indeks data yang AKAn dihapus dan menampilkan data mahasiswa yang AKAN dihapus}
   var
      index,i : integer;

   begin
   clrscr;

       repeat

        write('Masukan index data mahasiswa yang ingin di hapus : ');readln(index);

       until(index<=jumlah_data);

           writeln('Data Mahasiswa ke-',index);
           writeln();
           writeln(' NIM    :',DMhs[index].nim);
           writeln(' Nama   :',DMhs[index].nama);
           writeln();

           if(DMhs[index].nilai[1].uts <> 0) then       // menampilkan nilai
           begin
            for i :=1 to MaksNilai do
            begin

               writeln('Nilai     : ');
               writeln(' Matkul   :',DMhs[index].nilai[i].matkul);
               writeln(' Nilai UTS:',DMhs[index].nilai[i].uts);
               writeln(' Nilai UTS:',DMhs[index].nilai[i].uas);
               writeln('=====================================');

            end;

           end;
           writeln();
           writeln('====================================');
           writeln(' Data Tersebut Di Atas Akan Dihapus ');
           writeln('====================================');
           HapusData(index,DMhs);     // memanggil prosedur hapusData
           readkey;

   end;

{-------------------PROGRAM UTAMA-----------------------------------}
begin

        repeat
              textcolor(12);
              gotoxy(15,5);writeln('|  Program Data Mahasiswa  |');
              gotoxy(15,6);writeln('============================');
              gotoxy(15,8);write  ('Masukan jumlah data : ');readln(jumlah_data);
        until (jumlah_data<MaksData);  // validasi agar jumlah data tidak melebihi maksdata

        repeat
        clrscr;
        gotoxy(10,8);writeln('==========================================');
        gotoxy(10,9);writeln('      Menu Program Data Mahasiswa');
        gotoxy(10,10);writeln('==========================================');
        gotoxy(10,11);writeln('      1. Tambah Data Mahasiswa');
        gotoxy(10,12);writeln('      2. Ubah Data Mahasiswa');
        gotoxy(10,13);writeln('      3. Lihat Data dengan index');
        gotoxy(10,14);writeln('      4. Cari Data Berdasarkan NIM (Sequential)');
        gotoxy(10,15);writeln('      5. Lihat Semua Data');
        gotoxy(10,16);writeln('      6. Hapus Data');
        gotoxy(10,17);writeln('      7. Keluar');
        gotoxy(10,18);writeln('-----------------------------------------');
        gotoxy(10,19);write('      Masukan Menu : '); readln(menu);

        case menu of   // Memanggil Prosedur yg telah dibuat
          1 : isiDataMahasiswa(Data);
          2 : ubahDataMahasiswa(Data);
          3 : SelectionDataMahasiswa(Data);
          4 : cari(Data);
          5 : tampildata(Data);
          6 : HapusDataMahasiswa(Data);
        end;

        until (menu=7);// akan keluar program jika user memilih menu 7. Keluar
end.
------------------------------------Thank YOU-------------------------------------------

Program unik PASCAL


Iseng-iseng bikin program konyol.. tampilannya kayak gini niih :


Ini source code nya menggunakan aplikasi Dev-PASCAL. Aplikasinya lumayan buat isengin temen atau buat usir nyamuk. :D


program Untitled;
begin
writeln();
writeln();
writeln();
writeln();
writeln();
writeln();
writeln();
writeln();
writeln('                       8888  8888888');
writeln('                  888888888888888888888888');
writeln('               8888:::8888888888888888888888888');
writeln('             8888::::::8888888888888888888888888888');
writeln('            88::::::::888:::8888888888888888888888888');
writeln('          88888888::::8:::::::::::88888888888888888888');
writeln('        888 8::888888::::::::::::::::::88888888888   888');
writeln('           88::::88888888::::m::::::::::88888888888    8');
writeln('         888888888888888888:M:::::::::::8888888888888');
writeln('        88888888888888888888::::::::::::M88888888888888');
writeln('        8888888888888888888888:::::::::M8888888888888888');
writeln('         8888888888888888888888:::::::M888888888888888888');
writeln('        8888888888888888::88888::::::M88888888888888888888');
writeln('      88888888888888888:::88888:::::M888888888888888   8888');
writeln('     88888888888888888:::88888::::M::;o*M*o;888888888    88');
writeln('    88888888888888888:::8888:::::M:::::::::::88888888    8');
writeln('   88888888888888888::::88::::::M:;:::::::::::888888888');  
writeln('  8888888888888888888:::8::::::M::aAa::::::::M8888888888       8');
writeln('  88   8888888888::88::::8::::M:::::::::::::888888888888888 8888');
writeln(' 88  88888888888:::8:::::::::M::::::::::;::88:88888888888888888');
writeln(' 8  8888888888888:::::::::::M::"@@@@@@@"::::8w8888888888888888');
writeln('  88888888888:888::::::::::M:::::"@a@":::::M8i888888888888888');
writeln(' 8888888888::::88:::::::::M88:::::::::::::M88z88888888888888888');
writeln('8888888888:::::8:::::::::M88888:::::::::MM888!888888888888888888');
writeln('888888888:::::8:::::::::M8888888MAmmmAMVMM888*88888888   88888888');
writeln('888888 M:::::::::::::::M888888888:::::::MM88888888888888   8888888');
writeln('8888   M::::::::::::::M88888888888::::::MM888888888888888    88888');
writeln(' 888   M:::::::::::::M8888888888888M:::::mM888888888888888    8888');
writeln('  888  M::::::::::::M8888:888888888888::::m::Mm88888 888888   8888');
writeln('   88  M::::::::::::8888:88888888888888888::::::Mm8   88888   888');
writeln('   88  M::::::::::8888M::88888::888888888888:::::::Mm88888    88');
writeln('   8   MM::::::::8888M:::8888:::::888888888888::::::::Mm8     4 ');
writeln('       8M:::::::8888M:::::888:::::::88:::8888888::::::::Mm    2          ');
writeln('      88MM:::::8888M:::::::88::::::::8:::::888888:::M:::::M              ');
writeln('     8888M:::::888MM::::::::8:::::::::::M::::8888::::M::::M             ');
writeln('    88888M:::::88:M::::::::::8:::::::::::M:::8888::::::M::M             ');
writeln('   88 888MM:::888:M:::::::::::::::::::::::M:8888:::::::::M:         ');
writeln('   8 88888M:::88::M:::::::::::::::::::::::MM:88::::::::::::M        ');
writeln('     88888M:::88::M::::::::::*88*::::::::::M:88::::::::::::::M    ');
writeln('    888888M:::88::M:::::::::88@@88:::::::::M::88::::::::::::::M    ');
writeln('    888888MM::88::MM::::::::88@@88:::::::::M:::8::::::::::::::*8   ');
writeln('    88888  M:::8::MM:::::::::*88*::::::::::M:::::::::::::::::88@@  ');
writeln('    8888   MM::::::MM:::::::::::::::::::::MM:::::::::::::::::88@@  ');
writeln('     888    M:::::::MM:::::::::::::::::::MM::M::::::::::::::::*8   ');
writeln('     888    MM:::::::MMM::::::::::::::::MM:::MM:::::::::::::::M    ');
writeln('      88     M::::::::MMMM:::::::::::MMMM:::::MM::::::::::::MM    ');
writeln('       88    MM:::::::::MMMMMMMMMMMMMMM::::::::MMM::::::::MMM     ');
writeln('        88    MM::::::::::::MMMMMMM::::::::::::::MMMMMMMMMM      ');
writeln('         88   8MM::::::::::::::::::::::::::::::::::MMMMMM       ');
writeln('          8   88MM::::::::::::::::::::::M:::M::::::::MM        ');
writeln('              888MM::::::::::::::::::MM::::::MM::::::MM ');
writeln('             88888MM:::::::::::::::MMM:::::::mM:::::MM  ');
writeln('             888888MM:::::::::::::MMM:::::::::MMM:::M    ');
writeln('            88888888MM:::::::::::MMM:::::::::::MM:::M    ');
writeln('           88 8888888M:::::::::MMM::::::::::::::M:::M   ');
writeln('           8  888888 M:::::::MM:::::::::::::::::M:::M:  ');
writeln('              888888 M::::::M:::::::::::::::::::M:::MM  ');
writeln('             888888  M:::::M::::::::::::::::::::::::M:M ');
writeln('             888888  M:::::M:::::::::@::::::::::::::M::M');
writeln('             88888   M::::::::::::::@@:::::::::::::::M::M ');
writeln('            88888   M::::::::::::::@@@::::::::::::::::M::M    ');
writeln('           88888   M:::::::::::::::@@::::::::::::::::::M::M    ');
writeln('          88888   M:::::m::::::::::@::::::::::Mm:::::::M:::M    ');
writeln('          8888   M:::::M:::::::::::::::::::::::MM:::::::M:::M   ');
writeln('         8888   M:::::M:::::::::::::::::::::::MMM::::::::M:::M   ');
writeln('        888    M:::::Mm::::::::::::::::::::::MMM:::::::::M::::M   ');
writeln('      8888    MM::::Mm:::::::::::::::::::::MMMM:::::::::m::m:::M  ');
writeln('     888      M:::::M::::::::::::::::::::MMM::::::::::::M::mm:::M  ');
writeln('  8888       MM:::::::::::::::::::::::::MM:::::::::::::mM::MM:::M: ');
writeln('             M:::::::::::::::::::::::::M:::::::::::::::mM::MM:::Mm  ');
writeln('            MM::::::m:::::::::::::::::::::::::::::::::::M::MM:::MM   ');
writeln('            M::::::::M:::::::::::::::::::::::::::::::::::M::M:::MM  ');    
writeln('           MM:::::::::M:::::::::::::M:::::::::::::::::::::M:M:::MM   ');
writeln('           M:::::::::::M88:::::::::M:::::::::::::::::::::::MM::MMM   ');
writeln('           M::::::::::::8888888888M::::::::::::::::::::::::MM::MM   ');
writeln('           M:::::::::::::88888888M:::::::::::::::::::::::::M::MM  ');
writeln('           M::::::::::::::888888M:::::::::::::::::::::::::M::MM  ');
writeln('           M:::::::::::::::88888M:::::::::::::::::::::::::M:MM   ');
writeln('           M:::::::::::::::::88M::::::::::::::::::::::::::MMM    ');
writeln('           M:::::::::::::::::::M::::::::::::::::::::::::::MMM    ');
writeln('           MM:::::::::::::::::M::::::::::::::::::::::::::MMM      ');
writeln('            M:::::::::::::::::M::::::::::::::::::::::::::MMM     ');
writeln('            MM:::::::::::::::M::::::::::::::::::::::::::MMM      ');
writeln('             M:::::::::::::::M:::::::::::::::::::::::::MMM       ');
writeln('             MM:::::::::::::M:::::::::::::::::::::::::MMM        ');
writeln('              M:::::::::::::M::::::::::::::::::::::::MMM         ');
writeln('              MM:::::::::::M::::::::::::::::::::::::MMM          ');
writeln('               M:::::::::::M:::::::::::::::::::::::MMM          ');
writeln('               MM:::::::::M:::::::::::::::::::::::MMM           ');
writeln('                M:::::::::M::::::::::::::::::::::MMM           ');
writeln('                MM:::::::M::::::::::::::::::::::MMM            ');
writeln('                 MM::::::M:::::::::::::::::::::MMM            ');
writeln('                 MM:::::M:::::::::::::::::::::MMM            ');
writeln('                  MM::::M::::::::::::::::::::MMM            ');
writeln('                  MM:::M::::::::::::::::::::MMM            ');
writeln('                   MM::M:::::::::::::::::::MMM             ');
writeln('                   MM:M:::::::::::::::::::MMM             ');
writeln('                    MMM::::::::::::::::::MMM        ');
writeln('                    MM::::::::::::::::::MMM        ');
writeln('                     M:::::::::::::::::MMM         ');
writeln('                    MM::::::::::::::::MMM         ');
writeln('                    MM:::::::::::::::MMM          ');
writeln('                    MM::::M:::::::::MMM:         ');
writeln('                    mMM::::MM:::::::MMMM        ');
writeln('                     MMM:::::::::::MMM:M        ');
writeln('                     mMM:::M:::::::M:M:M         ');
writeln('                      MM::MMMM:::::::M:M        ');
writeln('                      MM::MMM::::::::M:M        ');
writeln('                      mMM::MM::::::::M:M        ');
writeln('                       MM::MM:::::::::M:M        ');
writeln('                       MM::MM::::::::::M:m       ');
writeln('                       MM:::M:::::::::::MM          ');
writeln('                       MMM:::::::::::::::M:         ');
writeln('                       MMM:::::::::::::::M:          ');
writeln('                       MMM::::::::::::::::M         ');
writeln('                       MMM::::::::::::::::M         ');
writeln('                       MMM::::::::::::::::Mm        ');
writeln('                        MM::::::::::::::::MM        ');
writeln('                        MMM:::::::::::::::MM        ');
writeln('                        MMM:::::::::::::::MM        ');
writeln('                        MMM:::::::::::::::MM       ');
writeln('                        MMM:::::::::::::::MM       ');
writeln('                         MM::::::::::::::MMM        ');
writeln('                         MMM:::::::::::::MM        ');
writeln('                         MMM:::::::::::::MM        ');
writeln('                         MMM::::::::::::MM         ');
writeln('                          MM::::::::::::MM         ');
writeln('                          MM::::::::::::MM         ');
writeln('                          MM:::::::::::MM          ');
writeln('                          MMM::::::::::MM          ');
writeln('                          MMM::::::::::MM         ');
writeln('                           MM:::::::::MM                ');
writeln('                           MMM::::::::MM               ');
writeln('                           MMM::::::::MM               ');
writeln('                            MM::::::::MM               ');
writeln('                            MMM::::::MM                ');
writeln('                             MM::::::MM                ');
writeln('                             MM::::::MM                ');
writeln('                              MM:::::MM               ');
writeln('                              MM:::::MM:              ');
writeln('                              MM:::::M:M              ');
writeln('                              MM:::::M:M              ');
writeln('                              :M::::::M:              ');
writeln('                             M:M:::::::M              ');
writeln('                            M:::M::::::M              ');
writeln('                           M::::M::::::M              ');
writeln('                          M:::::M:::::::M       ');
writeln('                         M::::::MM:::::::M      ');
writeln('                         M:::::::M::::::::M      ');
writeln('                         M;:;::::M:::::::::M      ');
writeln('                         M:m:;:::M::::::::::M      ');
writeln('                         MM:m:m::M::::::::;:M      ');
writeln('                          MM:m::MM:::::::;:;M       ');
writeln('                           MM::MMM::::::;:m:M       ');
writeln('                            MMMM MM::::m:m:MM       ');
writeln('                                  MM::::m:MM        ');
writeln('                                   MM::::MM         ');
writeln('                                    MM::MM         ');
readln;
end.