Memahami Pembuatan Animasi Melalui C++

Saya belajar C++ di sekolah. Ini dikasih tugas buat memodifikasi program animasi roket dari guru saya. Saya rencananya mau ubah jadi program animasi mobil. Tapi saya ngak terlalu ngerti dengan bahasa Inggris karena selama ini cuma belajar pakai bahasa Indonesia. Tolong bantu arahin apa yang harus saya ubah. Jika berkenan, bisa tolong jelasin maksud dari program tapi kalau diarahin apa yang harus diubah saja pun saya sudah berterimakasih

#include <stdio.h>

//Giving some delay
void delay( unsigned int value)
{
    unsigned int count1 =0;
    unsigned int count2 = 0;

    for(count1 = 0; count1 < value ; count1++ )
    {
        for(count2 = 0; count2 < count1 ; count2++ )
        {

        }
    }
}


// string to display Rocket
const char rocket[] =
    "           ^ \n\
          /^\\\n\
          |-|\n\
          | |\n\
          |I|\n\
          |S|\n\
          |R|\n\
          |O|\n\
         /| |\\\n\
        / | | \\\n\
       |  | |  |\n\
        `-\"\"\"-`\n\
";

int main()
{

    int jumpControlAtBottom = 0;
    const int someDelay = 6000;
    int shifControl = 0;


    //jump to bottom of console

    for (jumpControlAtBottom = 0; jumpControlAtBottom < 30; ++jumpControlAtBottom)
    {
        printf("\n");
    }

    //Print rocket
    fputs(rocket,stdout);

    for (shifControl = 0; shifControl < 30; ++shifControl)
    {
        // Rocket move on the basis of delay
        delay(someDelay);
        
        // move rocket a line upward
        printf("\n");
    }
    return 0;
}
avatar hizkiakhairossimamora
@hizkiakhairossimamora

1 Kontribusi 0 Poin

Diperbarui 2 bulan yang lalu

1 Jawaban:

Jawaban Terpilih

hmm,,, musti di breakdown satu satu kah ? ?

  1. void delay() ini untuk memberi delay pada program,, tanpa perubahan gapapa
  2. rocket diganti mobil,, misal kayak gini (sorry gambarnya jelek XD)

// String untuk menampilkan mobil
const char* car[] = {
    "    ____",
    "   /  |_ \\_",
    "  |  o  o  |",
    "  |_______|",
    "    O   O"
};
  1. int main() yang atas, bisa tetap digunakan,, mungkin kalo mao di ganti, di bagian const int someDelay bisa diganti untuk cek kecepatan animasinya
  2. // move rocket a line upward nah,, bagian ini yang ribet,,, kalo di roket, kita hanya perlu nambah line di bagian bawah,,, di kasus mobil,, kita perlu menggerakkan masing2 baris ke kanan (intinya menambah spasi " " di awal setiap baris)
    int carHeight = 5; // Jumlah baris mobil

    // ini bisa tetap, bbisa di hilangkan,,bebas sih,,
    for (jumpControlAtBottom = 0; jumpControlAtBottom < 20; ++jumpControlAtBottom)
    {
        printf("\n");
    }

    // Loop untuk menggerakkan mobil 
    for (shifControl = 0; shifControl < 60; ++shifControl)
    {
        // Beri jeda
        delay(someDelay);

        // Bersihkan layar (supaya ilang, trus kita munculin lagi, tapi udah ada tambahan spasi,,, kalo ga paham ini untuk apa, bisa di hapus terus di run,, visual lebih mudah di pahami daripada penjelasan)
        system("clear"); // Gunakan "cls" jika di Windows

        // Tampilkan mobil
        for (int i = 0; i < carHeight; i++)
        {
            for (int j = 0; j < shifControl; j++)
            {
                printf(" ");
            }
            printf("%s\n", car[i]);
        }

        // Flush output untuk memastikan mobil ditampilkan
        fflush(stdout);
    }

    return 0;

semoga bisa membantu,,, kalo ada pertanyaan lebih lanjut bisa ditanyakan ^^

avatar yukaristel
@yukaristel

35 Kontribusi 31 Poin

Dipost 2 bulan yang lalu

Tanggapan

Terimakasih ya udah mau menyempatkan beri penjelasan. Makasih ya!

Login untuk ikut Jawaban