Tcl - Keputusan

Struktur pengambilan keputusan mengharuskan pemrogram menentukan satu atau lebih kondisi untuk dievaluasi atau diuji oleh program, bersama dengan pernyataan atau pernyataan yang akan dieksekusi jika kondisi ditentukan benar, dan secara opsional, pernyataan lain yang akan dieksekusi jika kondisinya ditentukan sebagai salah.

Berikut ini adalah bentuk umum dari struktur pengambilan keputusan khas yang ditemukan di sebagian besar bahasa pemrograman -

Bahasa Tcl menggunakan perintah expr secara internal dan oleh karena itu kita tidak perlu menggunakan pernyataan expr secara eksplisit.

Bahasa Tcl menyediakan jenis pernyataan pengambilan keputusan berikut -

Sr.No. Pernyataan & Deskripsi
1 jika pernyataan

Pernyataan 'jika' terdiri dari ekspresi Boolean yang diikuti oleh satu atau beberapa pernyataan.

2 jika ... pernyataan lain

Pernyataan 'if' dapat diikuti dengan pernyataan 'else' opsional, yang dieksekusi jika ekspresi Boolean salah.

3 pernyataan if bersarang

Anda dapat menggunakan satu pernyataan 'if' atau 'else if' di dalam pernyataan 'if' atau 'else if' lainnya.

4 pernyataan switch

SEBUAH switch pernyataan memungkinkan variabel untuk diuji kesetaraan terhadap daftar nilai.

5 pernyataan saklar bersarang

Anda bisa menggunakannya switch pernyataan di dalam yang lain switch pernyataan.

Itu? : Operator

Kami telah meliputnya conditional operator ? : di bab sebelumnya, yang bisa digunakan untuk menggantikan if...elsepernyataan. Ini memiliki bentuk umum berikut -

Exp1 ? Exp2 : Exp3;

Dimana Exp1, Exp2, dan Exp3 adalah ekspresi. Perhatikan penggunaan dan penempatan titik dua.

Nilai dari '? ekspresi 'ditentukan seperti ini: Exp1 dievaluasi. Jika benar, maka Exp2 dievaluasi dan menjadi nilai keseluruhan '? ekspresi.' Jika Exp1 salah, maka Exp3 dievaluasi dan nilainya menjadi nilai ekspresi. Contohnya ditunjukkan di bawah ini.

#!/usr/bin/tclsh

set a 10;
set b [expr $a == 1 ? 20: 30]
puts "Value of b is $b\n"
set b [expr $a == 10 ? 20: 30]
puts "Value of b is $b\n"

Ketika Anda mengkompilasi dan menjalankan program di atas, ini menghasilkan hasil sebagai berikut -

Value of b is 30
Value of b is 20