Variabel, Konstanta, dan Input

Variabel adalah suatu nama yang kita gunakan untuk mewakili lokasi atau alamat penyimpanan suatu nilai di dalam memori komputer. Dengan variabel kita bisa menyimpan nilai berupa angka, string, atau nilai lain dalam bahasa pemrograman. Sebelum kita bisa menggunakan variabel, kita harus mendeklarasikan nama beserta tipe datanya. Dalam bahasa C dan C++, nama variabel ditulis setelah tipe datanya. Polanya adalah seperti di bawah ini.

Tipe data Nama_variabel;

atau

Tipe data Nama_variabel=nilai_awal;

Contoh :
int main(){
int angka=;
    return 0;
}
Pada contoh di atas, kita mendeklarasikan variabel dengan nama angka dan tipe datanya adalah int atau bilangan bulat. Untuk memberi nilai suatu variabel, kita bisa menggunakan "operator penugasan". Nilai yang bisa diberikan pada suatu variabel harus sesuai dengan tipe variabelnya. Misalnya, kalau tipe datanya int, maka nilai yang bisa diberikan hanya bisa berupa bilangan bulat.

Operator penugasan dalam bahasa C dan C++ adalah tanda sama dengan (=). Untuk lebih jelasnya, perhatikan contoh berikut ini!
int main(){
    int angka=0;
    angka=10;
    return 0;
}
Pemberian nilai bisa dilakukan saat deklarasi atau setelahnya hanya dengan menuliskan setelah nama variabel dan tanda sama dengan(=). Setelah variabel diberi nilai, kita bisa menampilkan nilainya dengan cout atau printf. Untuk cout, kita cukup menulis nama variabel yang akan kita tampilkan setelah tanda <<.
#include <iostream>
int main(){
int angka=10;
    std::cout << angka;
    return 0;
}
Dalam Bahasa C maupun C++, kita bisa menggunakan printf. Untuk printf, kita perlu menggunakan "%d" jika tipe datanya adalah bilangan bulat.
#include <stdio.h>

int main(){
int angka=10;
    printf("%d", angka);
    return 0;
}
Selain bilangan bulat, ada tipe data-tipe data lain yang bisa kita gunakan seperti pecahan desimal, string, dll. Cara deklarasi dan pemberian nilai pada tipe data pecahan desimal sama dengan saat kita menggunakan tipe data int. Bedanya adalah nama tipe data untuk pecahan desimal dalam bahasa C dan C++ adalah float. Selain itu, cara "%d" perlu kita ganti dengan "%f" saat menggunakan printf.
#include <iostream>
#include <stdio.h> 

int main(){
float angka=10.5;
    std::cout << angka << std::endl;
    printf("%f", angka); 
    return 0;
}
Kadang kita mungkin ingin menghindari kecerobohan agar kita tidak mengubah nilai suatu variabelkarena kita ingin agar nilai variabel tersebut tetap. Jika kita tidak ingin mengubah nilai suatu variabel, kita bisa menggunakan const untuk menjadikan variabel sebagai konstanta. Konstanta bisa kita tentukan nilainya saat deklarasi, dan tidak bisa kita ubah nilainya dengan tanda sama dengan (=) setelah deklarasi dari konstanta tersebut.
#include <stdio.h>
#include <iostream> 

int main(){
const float angka=10.5;
  std::cout << angka << std::endl;
  //angka=10;
  //Jangan ubah nilai variabel angka kecuali anda ingin programnya error
  printf("%f", angka); 
  return 0;
}
Selanjutnya, kalian bisa mengotak-atik sendiri kode programnya untuk memberi nilai dan menampilkan variabel sesuai keinginan kalian.

Yang perlu kalian ketahui lagi, tipe data yang bisa ditampilkan secara langsung "hanya dengan namanya" adalah string dan tipe data dasar. Berikut ini adalah beberapa tipe data dasar dalam C atau C++.
  1. char
  2. short
  3. int
  4. longint
  5. long long int
  6. float
  7. double
  8. long double
Untuk bahasa C++, ada juga tipe data boolean. Bahasa C pada awalnya tidak mengenal tipe data boolean, kecuali disediakan oleh library-nya atau ada penambahan tipe data karena perubahan standar ISO untuk bahasa C.

Penamaan Variabel
Nama variabel dan function dalam bahasa pemrogram umumnya disebut dengan identifier. Ada beberapa aturan dalam penamaan identifier harus kalian taati saat kalian membuat program dalam bahasa C atau C++. Aturan-aturan tersebut, yaitu :
  1. Nama variabel tidak boleh diawali dengan angka.
  2. Variabel cuma boleh terdiri dari huruf, angka, dan underscore(_). Operator tidak boleh digunakan sebagai nama variabel.
  3. Tiap compiler mungkin memiliki batas banyaknya karakter atau huruf yang boleh digunakan dalam nama variabel. Untuk amannya, sebaiknya hanya gunakan maksimal 32 karakter untuk nama variabel.
  4. Nama variabel tidak boleh berupa reserved word atau "nama-nama khusus" yang digunakan dalam kode program.
Berikut ini adalah beberapa reserved word yang ada dalam bahasa C++!
  1. and
  2. and_eq
  3. asm
  4. auto
  5. bitand
  6. bitor
  7. bool
  8. break
  9. case
  10. catch
  11. char
  12. class
  13. compl
  14. const
  15. const_cast
  16. continue
  17. default
  18. delete
  19. do
  20. double
  21. dynamic_cast
  22. else
  23. enum
  24. explicit
  25. export
  26. extern
  27. false
  28. float
  29. for
  30. friend
  31. goto
  32. if
  33. inline
  34. int
  35. long
  36. mutable
  37. namespace
  38. new
  39. not
  40. not_eq
  41. operator
  42. or
  43. or_eq
  44. private
  45. protected
  46. public
  47. register
  48. reinterpret_cast
  49. return
  50. short
  51. signed
  52. sizeof
  53. static
  54. static_cast
  55. struct
  56. switch
  57. template
  58. this
  59. throw
  60. true
  61. try
  62. typedef
  63. typeid
  64. typename
  65. union
  66. unsigned
  67. using
  68. virtual
  69. void
  70. volatile
  71. wchar_t
  72. while
  73. xor
  74. xor_eq
Beberapa di antara reserved word tersebut hanya berlaku untuk bahasa C++, dan hanya ada di standar ISO tertentu. Jika kita menggunakan reserved word sebagai nama variabel, seharusnya compiler akan memberitahukan errornya pada kita saat kode program dicompile.

Input
Selain memberikan nilai secara langsung dengan tanda sama dengan, kita juga bisa memberikan nilai pada variabel berdasarkan input dari pengguna. Untuk Bahasa C++, kita bisa menggunakan cin jika kita ingin mendapatkan nilai tertentu dari pengguna. Nilai yang diberikan pengguna nantinya akan disimpan dalam variabel yang digunakan cin. Berikut ini adalah contoh cara penggunaan cin.
#include <iostream>
using namespace std;
int main(){
int angka;
    cin >> angka;
    cout << angka;
    return 0;
}
Perhatikan contoh di atas!
Pada contoh di atas, cin digunakan untuk menunggu input dari pengguna. Input dari pengguna akan disimpan ke dalam variabel setelah pengguna menekan enter. Pada kode program di atas, setelah pengguna memasukkan suatu nilai dan menekan enter, program akan dilanjutkan dengan menekan angka yang sudah disimpan dalam variabel angka dengan cout. Btw, "arah tanda" pada cin dan cout berbeda dan saling berlawanan.

Selain menggunakan cin, kita bisa juga menggunakan scanf. Yang perlu diperhatikan adalah, untuk menggunakan cin dan cout, kita perlu menggunakan "#include <iostream>". Sedangkan untuk menggunakan scanf, kita harus menggunakan "#include <stdio.h>" seperti halnya saat kita menggunakan printf.

#include <stdio.h>

int main(){
int angka;
    scanf("%d", &angka);
    printf("%d", angka);
    return 0;
}

Jika kalian memperhatikan contoh di atas, kalian akan melihat format specifier berupa "%d". "%d" perlu kalian gunakan pada printf dan scanf jika tipe datanya adalah integer. Jika tipe datanya float, maka kalian harus menggantinya dengan "%f" seperti contoh di bawah ini. Selain menggunakan "%d" dan "%f", kita perlu menggunakan tanda ampersand(&) jika tipe datanya bukan array atau string. Jika tipe datanya adalah string, array, atau pointer kalian tidak akan mebutuhkan tanda ampersand.
#include <stdio.h>

int main(){
char s[100];
int i=0;
    scanf("%s", s);
    scanf("%d", &i);
    printf("%s %d", s, i);
    return 0;
}
Saat kalian memasukkan string yang berisi spasi, hanya kata pertama yang akan disimpan oleh variabel yang ada. Jika kalian ingin agar satu baris disimpan semua dalam satu variabel dengan tipe data string, kalian bisa menggunakan scanf dengan cara seperti berikut ini.
#include <stdio.h>

int main(){
char s[100];
    scanf("%[0123456789 ][^\n]s", s);
    printf("%s", s);
    return 0;
}
Karakter yang ada dalam tanda kurung kotak menandakan karakter yang akan diterima dari input. Pada contoh di atas, karakter yang diterima hanya 1, 2, 3, 4, 5, 6,7, 8, 9, 0 dan spasi. Selain itu, ada tanda caret (^) yang menandakan karakter yang tidak dibolehkan. Kalau ada karakter yang tidak sesuai dengan syarat yang diberikan, maka input akan dianggap berakhir setelah karakter tersebut.

Bagi kalian yang malas mengetik maupun copas, ambil saja source code-nya di sini. Gunakan code block untuk membukanya.