Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Dalam tutorial ini, Anda menggunakan Visual Studio untuk membuat dan menjalankan aplikasi konsol C#, dan menjelajahi beberapa fitur lingkungan pengembangan terintegrasi Visual Studio (IDE). Tutorial ini adalah bagian 1 dari seri tutorial dua bagian.
Dalam tutorial ini, Anda menyelesaikan tugas-tugas berikut:
- Membuat proyek Visual Studio.
- Buat aplikasi konsol C#.
- Debug aplikasi Anda.
- Tutup aplikasi Anda.
- Periksa kode lengkap Anda.
Dalam bagian 2 dari tutorial ini, Anda mengembangkan aplikasi ini lebih lanjut untuk menambahkan lebih banyak proyek, mempelajari trik debugging, dan menggunakan paket non-Microsoft.
Prasyarat
Anda harus menginstal Visual Studio.
Jika Anda belum memiliki Visual Studio, buka halaman download Visual Studio untuk menginstalnya secara gratis.
Membuat proyek
Untuk memulai, buat proyek aplikasi C#. Jenis proyek dilengkapi dengan semua file templat yang Anda butuhkan.
Buka Visual Studio, dan pilih Buat proyek baru di jendela mulai.
Di jendela Buat proyek baru, pilih C# dari daftar dropdown bahasa. Pilih Windows dari daftar platform dan Console dari daftar jenis proyek.
Setelah Anda menerapkan filter bahasa, platform, dan jenis proyek, pilih templat Aplikasi Konsol, lalu pilih Berikutnya.
Nota
Jika Anda tidak melihat templat Aplikasi Konsol, pilih Instal lebih banyak alat dan fitur.
Di Alat Penginstal Visual Studio, pilih pengembangan lintas platform .NET Core beban kerja.
Pilih Ubah di Penginstal Visual Studio. Anda mungkin diminta untuk menyimpan pekerjaan Anda. Pilih Lanjutkan untuk menginstal beban kerja.
Kembali ke langkah 2 di prosedur Buat proyek.
Di jendela Konfigurasikan proyek baru Anda, ketik atau masukkan Kalkulator di kotak Nama proyek. Kemudian, pilih Berikutnya.
Di jendela informasi tambahan, verifikasi bahwa .NET Core 3.1 muncul di bidang Kerangka Kerja Target. Kemudian, pilih Buat.
Visual Studio membuka proyek baru Anda, yang mencakup kode Hello World default. Untuk melihatnya di editor, pilih file kode Program.cs di jendela Penjelajah Solusi, yang biasanya berada di sisi kanan Visual Studio.
Kode Hello World default memanggil metode WriteLine untuk menampilkan string harfiah Hello, World! di jendela konsol. Jika Anda menekan F5, Anda dapat menjalankan program default dalam mode Debug. Setelah aplikasi berjalan di debugger, jendela konsol tetap terbuka. Tekan tombol apa pun untuk menutup jendela konsol.
Buka Visual Studio, dan pilih Buat proyek baru di jendela mulai.
Di jendela Buat proyek baru, pilih C# dari daftar dropdown bahasa. Pilih Windows dari daftar platform dan Console dari daftar jenis proyek.
Setelah Anda menerapkan filter bahasa, platform, dan jenis proyek, pilih templat Aplikasi Konsol, lalu pilih Berikutnya.
Nota
Jika Anda tidak melihat templat Aplikasi Konsol, pilih Instal lebih banyak alat dan fitur.
Di Penginstal Visual Studio, pilih workload pengembangan desktop .NET.
Pilih Ubah di Penginstal Visual Studio. Anda mungkin diminta untuk menyimpan pekerjaan Anda. Pilih Lanjutkan untuk menginstal beban kerja.
Kembali ke langkah 2 dalam prosedur Membuat proyek.
Di jendela Konfigurasikan proyek baru Anda, ketik atau masukkan Kalkulator dalam kotak Nama proyek, lalu pilih Berikutnya.
Di jendela Informasi tambahan, pilih .NET 8.0 untuk bidang Kerangka Kerja Target. Kemudian, pilih Buat.
Visual Studio membuka proyek baru Anda, yang mencakup kode Hello World default. Untuk melihatnya di editor, pilih file kode Program.cs di jendela Penjelajah Solusi, yang biasanya berada di sisi kanan Visual Studio.
Pernyataan kode tunggal memanggil metode WriteLine untuk menampilkan string harfiah Hello, World! di jendela konsol. Jika Anda menekan F5, Anda dapat menjalankan program default dalam mode Debug. Setelah aplikasi berjalan di debugger, jendela konsol tetap terbuka. Tekan tombol apa pun untuk menutup jendela konsol.
Nota
Dimulai dengan .NET 6, proyek baru menggunakan templat konsol menghasilkan kode yang berbeda dari versi sebelumnya. Untuk mempelajari lebih lanjut, lihat templat baru C# yang menghasilkan pernyataan tingkat atas.
Membuat aplikasi
Di bagian ini, Anda menyelesaikan tugas berikut:
- Jelajahi beberapa matematika bilangan bulat dasar di C#.
- Tambahkan kode untuk membuat aplikasi kalkulator dasar.
- Debug aplikasi untuk menemukan dan memperbaiki kesalahan.
- Persingkas kode agar lebih efisien.
Menjelajahi matematika bilangan bulat
Mulailah dengan beberapa matematika bilangan bulat dasar di C#.
Di panel kanan, pilih Program.cs untuk menampilkan file di editor kode.
Di editor kode, hapus kode Hello World default.
Secara khusus, hapus baris yang mengatakan,
Console.WriteLine("Hello World!");.Di tempatnya, masukkan kode berikut:
int a = 42; int b = 119; int c = a + b; Console.WriteLine(c); Console.ReadKey();Perhatikan bahwa ketika Anda memasukkan kode, fitur IntelliSense di Visual Studio menawarkan opsi untuk melengkapi entri secara otomatis.
Pilih tombol Mulai hijau di samping Kalkulator untuk membangun dan menjalankan program Anda, atau tekan F5.
Jendela konsol terbuka menampilkan hasil 42 + 119, yaitu 161.
(Opsional) Anda dapat mengubah operator untuk mengubah hasilnya. Misalnya, Anda dapat mengubah operator
+di baris kodeint c = a + b;menjadi-untuk pengurangan,*untuk perkalian, atau/untuk pembagian. Kemudian, ketika Anda menjalankan program, hasilnya juga berubah.Tutup jendela konsol.
Di Penjelajah Solusi, di panel kanan, pilih Program.cs untuk menampilkan file di editor kode.
Di editor kode, ganti kode Hello World default yang mengatakan
Console.WriteLine("Hello World!");.
Ganti baris dengan kode berikut:
int a = 42; int b = 119; int c = a + b; Console.WriteLine(c); Console.ReadKey();Jika Anda memasukkan kode, fitur Visual Studio IntelliSense menawarkan opsi untuk melengkapi entri secara otomatis.
Untuk membuat dan menjalankan aplikasi Anda, tekan F5, atau pilih panah hijau di samping nama Kalkulator di toolbar atas.
Jendela konsol terbuka yang menampilkan hasil penjumlahan 42 + 119, yaitu 161.
Tutup jendela konsol.
(Opsional) Anda dapat mengubah operator untuk mengubah hasilnya. Misalnya, Anda dapat mengubah operator
+di baris kodeint c = a + b;menjadi-untuk pengurangan,*untuk perkalian, atau/untuk pembagian. Saat Anda menjalankan aplikasi, hasilnya berubah sesuai.
Menambahkan kode untuk membuat kalkulator
Lanjutkan dengan menambahkan sekumpulan kode kalkulator yang lebih kompleks ke proyek Anda.
Di editor kode, ganti semua kode di Program.cs dengan kode baru berikut:
using System; namespace Calculator { class Program { static void Main(string[] args) { // Declare variables and then initialize to zero. int num1 = 0; int num2 = 0; // Display title as the C# console calculator app. Console.WriteLine("Console Calculator in C#\r"); Console.WriteLine("------------------------\n"); // Ask the user to type the first number. Console.WriteLine("Type a number, and then press Enter"); num1 = Convert.ToInt32(Console.ReadLine()); // Ask the user to type the second number. Console.WriteLine("Type another number, and then press Enter"); num2 = Convert.ToInt32(Console.ReadLine()); // Ask the user to choose an option. Console.WriteLine("Choose an option from the following list:"); Console.WriteLine("\ta - Add"); Console.WriteLine("\ts - Subtract"); Console.WriteLine("\tm - Multiply"); Console.WriteLine("\td - Divide"); Console.Write("Your option? "); // Use a switch statement to do the math. switch (Console.ReadLine()) { case "a": Console.WriteLine($"Your result: {num1} + {num2} = " + (num1 + num2)); break; case "s": Console.WriteLine($"Your result: {num1} - {num2} = " + (num1 - num2)); break; case "m": Console.WriteLine($"Your result: {num1} * {num2} = " + (num1 * num2)); break; case "d": Console.WriteLine($"Your result: {num1} / {num2} = " + (num1 / num2)); break; } // Wait for the user to respond before closing. Console.Write("Press any key to close the Calculator console app..."); Console.ReadKey(); } } }Pilih tombol Kalkulator atau tekan F5 untuk menjalankan aplikasi Anda.
Jendela konsol terbuka.
Di jendela konsol, ikuti perintah untuk menambahkan angka 42 dan 119 bersama-sama.
Aplikasi Anda akan terlihat mirip dengan cuplikan layar berikut:
Di editor kode, ganti semua kode di Program.cs dengan kode baru berikut:
// Declare variables and then initialize to zero. int num1 = 0; int num2 = 0; // Display title as the C# console calculator app. Console.WriteLine("Console Calculator in C#\r"); Console.WriteLine("------------------------\n"); // Ask the user to type the first number. Console.WriteLine("Type a number, and then press Enter"); num1 = Convert.ToInt32(Console.ReadLine()); // Ask the user to type the second number. Console.WriteLine("Type another number, and then press Enter"); num2 = Convert.ToInt32(Console.ReadLine()); // Ask the user to choose an option. Console.WriteLine("Choose an option from the following list:"); Console.WriteLine("\ta - Add"); Console.WriteLine("\ts - Subtract"); Console.WriteLine("\tm - Multiply"); Console.WriteLine("\td - Divide"); Console.Write("Your option? "); // Use a switch statement to do the math. switch (Console.ReadLine()) { case "a": Console.WriteLine($"Your result: {num1} + {num2} = " + (num1 + num2)); break; case "s": Console.WriteLine($"Your result: {num1} - {num2} = " + (num1 - num2)); break; case "m": Console.WriteLine($"Your result: {num1} * {num2} = " + (num1 * num2)); break; case "d": Console.WriteLine($"Your result: {num1} / {num2} = " + (num1 / num2)); break; } // Wait for the user to respond before closing. Console.Write("Press any key to close the Calculator console app..."); Console.ReadKey();Pilih tombol Kalkulator atau tekan F5 untuk menjalankan aplikasi Anda.
Jendela konsol terbuka.
Di jendela konsol, ikuti perintah untuk menambahkan angka 42 dan 119 bersama-sama.
Aplikasi Anda akan terlihat mirip dengan cuplikan layar berikut:
Menambahkan fungsionalitas desimal
Sekarang, sesuaikan kode untuk menambahkan lebih banyak fungsionalitas.
Aplikasi kalkulator saat ini hanya menerima dan mengembalikan seluruh angka. Misalnya, jika Anda menjalankan aplikasi dan membagi angka 42 dengan angka 119, hasil Anda adalah nol, yang tidak tepat.
Untuk memperbaiki kode untuk meningkatkan presisi dengan menangani desimal:
Dari Program.cs di editor Visual Studio, tekan Ctrl+H untuk membuka kontrol Temukan dan Ganti.
Ketik int di kontrol, dan ketik float di bidang Ganti.
Pilih ikon untuk Sesuaikan huruf besar/kecil dan Sesuaikan seluruh kata pada kontrol, atau tekan Alt+C dan Alt+W.
Pilih ikon Ganti semua atau tekan Alt+A untuk menjalankan pencarian dan ganti.
Jalankan aplikasi kalkulator Anda lagi, dan bagi angka 42 dengan angka 119.
Aplikasi sekarang mengembalikan angka desimal alih-alih nol.
Sekarang aplikasi dapat menghasilkan hasil desimal. Buat beberapa tweak lagi ke kode sehingga aplikasi juga dapat menghitung desimal.
Gunakan kontrol Temukan dan Ganti untuk mengubah setiap instans variabel
floatmenjadidouble, dan untuk mengubah setiap instans metodeConvert.ToInt32menjadiConvert.ToDouble.Jalankan aplikasi kalkulator Anda, dan bagi angka 42,5 dengan angka 119,75.
Aplikasi sekarang menerima nilai desimal, dan mengembalikan angka desimal yang lebih panjang sebagai hasilnya.
Di bagian Revisi kode, Anda mengurangi jumlah tempat desimal dalam hasil.
Memperbaiki kesalahan aplikasi
Anda meningkatkan aplikasi kalkulator dasar, tetapi aplikasi Anda belum menangani pengecualian, seperti kesalahan input pengguna. Misalnya, jika pengguna mencoba membagi dengan nol, atau memasukkan karakter yang tidak terduga, aplikasi mungkin berhenti bekerja, mengembalikan kesalahan, atau mengembalikan hasil non-numerik yang tidak terduga.
Mari kita menelusuri beberapa kesalahan input pengguna yang umum, melacaknya di debugger jika ada muncul di sana, dan memperbaikinya di dalam kode.
Tips
Untuk informasi selengkapnya tentang debugger dan cara kerjanya, lihat Pertama-tama lihat debugger Visual Studio.
Memperbaiki kesalahan dibagi dengan nol
Jika Anda mencoba membagi angka dengan nol, aplikasi konsol mungkin membeku, lalu menunjukkan apa yang salah di editor kode.
Nota
Terkadang aplikasi tidak membeku, dan debugger tidak menampilkan kesalahan pembagian dengan nol. Sebaliknya, aplikasi mungkin mengembalikan hasil non-numerik yang tidak terduga, seperti simbol tak terbatas. Perbaikan kode berikut masih berlaku.
Mari kita ubah kode untuk menangani kesalahan ini. Di Program.cs, ganti kode untuk case "d": dengan kode berikut:
// Ask the user to enter a non-zero divisor until they do so.
while (num2 == 0)
{
Console.WriteLine("Enter a non-zero divisor: ");
num2 = Convert.ToDouble(Console.ReadLine());
}
Console.WriteLine($"Your result: {num1} / {num2} = " + (num1 / num2));
break;
Setelah Anda mengganti kode, bagian dengan pernyataan switch akan terlihat mirip dengan cuplikan layar berikut:
Sekarang, ketika Anda membagi angka apa pun dengan nol, aplikasi meminta nomor lain, dan terus bertanya sampai Anda memberikan nomor bukan nol.
Memperbaiki kesalahan format
Jika Anda memasukkan karakter alfabet saat aplikasi mengharapkan karakter numerik, aplikasi akan membeku. Visual Studio menunjukkan kepada Anda apa yang salah di editor kode.
Untuk mencegah pengecualian ini, Anda dapat merefaktor kode yang sebelumnya Anda masukkan.
Merevisi kode
Daripada mengandalkan kelas program untuk menangani semua kode, Anda dapat membagi aplikasi Anda menjadi dua kelas: Calculator dan Program.
Kelas Calculator menangani sebagian besar pekerjaan penghitungan, dan kelas Program menangani antarmuka pengguna dan pekerjaan penanganan kesalahan.
Mari kita mulai.
Di Program.cs, hapus semuanya dan tambahkan kelas
Calculatorbaru berikut:class Calculator { public static double DoOperation(double num1, double num2, string op) { double result = double.NaN; // Default value is "not-a-number" if an operation, such as division, could result in an error. // Use a switch statement to do the math. switch (op) { case "a": result = num1 + num2; break; case "s": result = num1 - num2; break; case "m": result = num1 * num2; break; case "d": // Ask the user to enter a non-zero divisor. if (num2 != 0) { result = num1 / num2; } break; // Return text for an incorrect option entry. default: break; } return result; } }Tambahkan juga kelas
Programbaru, sebagai berikut:class Program { static void Main(string[] args) { bool endApp = false; // Display title as the C# console calculator app. Console.WriteLine("Console Calculator in C#\r"); Console.WriteLine("------------------------\n"); while (!endApp) { // Declare variables and set to empty. string numInput1 = ""; string numInput2 = ""; double result = 0; // Ask the user to type the first number. Console.Write("Type a number, and then press Enter: "); numInput1 = Console.ReadLine(); double cleanNum1 = 0; while (!double.TryParse(numInput1, out cleanNum1)) { Console.Write("This is not valid input. Please enter a numeric value: "); numInput1 = Console.ReadLine(); } // Ask the user to type the second number. Console.Write("Type another number, and then press Enter: "); numInput2 = Console.ReadLine(); double cleanNum2 = 0; while (!double.TryParse(numInput2, out cleanNum2)) { Console.Write("This is not valid input. Please enter a numeric value: "); numInput2 = Console.ReadLine(); } // Ask the user to choose an operator. Console.WriteLine("Choose an operator from the following list:"); Console.WriteLine("\ta - Add"); Console.WriteLine("\ts - Subtract"); Console.WriteLine("\tm - Multiply"); Console.WriteLine("\td - Divide"); Console.Write("Your option? "); string op = Console.ReadLine(); try { result = Calculator.DoOperation(cleanNum1, cleanNum2, op); if (double.IsNaN(result)) { Console.WriteLine("This operation will result in a mathematical error.\n"); } else Console.WriteLine("Your result: {0:0.##}\n", result); } catch (Exception e) { Console.WriteLine("Oh no! An exception occurred trying to do the math.\n - Details: " + e.Message); } Console.WriteLine("------------------------\n"); // Wait for the user to respond before closing. Console.Write("Press 'n' and Enter to close the app, or press any other key and Enter to continue: "); if (Console.ReadLine() == "n") endApp = true; Console.WriteLine("\n"); // Friendly linespacing. } return; } }Pilih tombol Kalkulator atau tekan F5 untuk menjalankan aplikasi Anda.
Ikuti perintah dan bagi angka 42 dengan angka 119. Hasil Anda akan terlihat mirip dengan cuplikan layar berikut:
Anda sekarang dapat menjalankan lebih banyak perhitungan hingga Anda memilih untuk menutup aplikasi konsol. Ada juga lebih sedikit tempat desimal dalam hasil. Dan jika Anda memasukkan karakter yang salah, Anda mendapatkan respons kesalahan yang sesuai.
Merevisi kode
Daripada mengandalkan kelas program untuk menangani semua kode, Anda dapat membagi aplikasi Anda menjadi dua kelas: Calculator dan Program.
Kelas Calculator menangani sebagian besar pekerjaan penghitungan, dan kelas Program menangani antarmuka pengguna dan pekerjaan penanganan kesalahan.
Mari kita mulai.
Di Program.cs, hapus semuanya dan tambahkan kelas
Calculatorbaru berikut:class Calculator { public static double DoOperation(double num1, double num2, string op) { double result = double.NaN; // Default value is "not-a-number" if an operation, such as division, could result in an error. // Use a switch statement to do the math. switch (op) { case "a": result = num1 + num2; break; case "s": result = num1 - num2; break; case "m": result = num1 * num2; break; case "d": // Ask the user to enter a non-zero divisor. if (num2 != 0) { result = num1 / num2; } break; // Return text for an incorrect option entry. default: break; } return result; } }Tambahkan juga kelas
Programbaru, sebagai berikut:class Program { static void Main(string[] args) { bool endApp = false; // Display title as the C# console calculator app. Console.WriteLine("Console Calculator in C#\r"); Console.WriteLine("------------------------\n"); while (!endApp) { // Declare variables and set to empty. // Use Nullable types (with ?) to match type of System.Console.ReadLine string? numInput1 = ""; string? numInput2 = ""; double result = 0; // Ask the user to type the first number. Console.Write("Type a number, and then press Enter: "); numInput1 = Console.ReadLine(); double cleanNum1 = 0; while (!double.TryParse(numInput1, out cleanNum1)) { Console.Write("This is not valid input. Please enter a numeric value: "); numInput1 = Console.ReadLine(); } // Ask the user to type the second number. Console.Write("Type another number, and then press Enter: "); numInput2 = Console.ReadLine(); double cleanNum2 = 0; while (!double.TryParse(numInput2, out cleanNum2)) { Console.Write("This is not valid input. Please enter a numeric value: "); numInput2 = Console.ReadLine(); } // Ask the user to choose an operator. Console.WriteLine("Choose an operator from the following list:"); Console.WriteLine("\ta - Add"); Console.WriteLine("\ts - Subtract"); Console.WriteLine("\tm - Multiply"); Console.WriteLine("\td - Divide"); Console.Write("Your option? "); string? op = Console.ReadLine(); // Validate input is not null, and matches the pattern if (op == null || ! Regex.IsMatch(op, "[a|s|m|d]")) { Console.WriteLine("Error: Unrecognized input."); } else { try { result = Calculator.DoOperation(cleanNum1, cleanNum2, op); if (double.IsNaN(result)) { Console.WriteLine("This operation will result in a mathematical error.\n"); } else Console.WriteLine("Your result: {0:0.##}\n", result); } catch (Exception e) { Console.WriteLine("Oh no! An exception occurred trying to do the math.\n - Details: " + e.Message); } } Console.WriteLine("------------------------\n"); // Wait for the user to respond before closing. Console.Write("Press 'n' and Enter to close the app, or press any other key and Enter to continue: "); if (Console.ReadLine() == "n") endApp = true; Console.WriteLine("\n"); // Friendly linespacing. } return; } }Pilih tombol Kalkulator atau tekan F5 untuk menjalankan aplikasi Anda.
Ikuti perintah dan bagi angka 42 dengan angka 119. Hasil Anda akan terlihat mirip dengan cuplikan layar berikut:
Anda sekarang dapat menjalankan lebih banyak perhitungan hingga Anda memilih untuk menutup aplikasi konsol. Ada juga lebih sedikit tempat desimal dalam hasil. Dan jika Anda memasukkan karakter yang salah, Anda mendapatkan respons kesalahan yang sesuai.
Tutup aplikasi
Jika Anda belum melakukannya, tutup aplikasi Kalkulator.
Tutup panel Output di Visual Studio.
Di Visual Studio, tekan Ctrl+S untuk menyimpan aplikasi Anda.
Menambahkan kontrol sumber Git
Sekarang setelah Anda memiliki aplikasi, Anda mungkin ingin menambahkannya ke repositori Git. Visual Studio memudahkan proses tersebut dengan alat Git yang dapat Anda gunakan langsung dari IDE.
Tips
Git adalah sistem kontrol versi modern yang paling banyak digunakan. Apakah Anda seorang pengembang profesional atau Anda mempelajari cara membuat kode, Git bisa sangat berguna. Jika Anda baru menggunakan Git, situs web https://git-scm.com/ adalah tempat yang baik untuk memulai. Anda dapat menemukan lembar contekan, buku online populer, dan video Dasar-dasar Git.
Untuk mengaitkan kode Anda dengan Git, mulailah dengan membuat repositori Git baru tempat kode Anda berada:
Di bilah status di kanan bawah Visual Studio, pilih Tambahkan ke Kontrol Sumber, lalu pilih Git.
Dalam kotak dialog Buat repositori Git, masuk ke GitHub:
Nama repositori terisi otomatis berdasarkan lokasi folder Anda. Repositori baru Anda bersifat pribadi secara default, yang berarti Anda satu-satunya yang dapat mengaksesnya.
Tips
Baik repositori Anda bersifat publik atau privat, yang terbaik adalah memiliki cadangan jarak jauh kode Anda yang disimpan dengan aman di GitHub. Bahkan jika Anda tidak bekerja dengan tim, repositori jarak jauh membuat kode Anda tersedia untuk Anda dari komputer mana pun.
Pilih Buat dan Unggah. Setelah membuat repositori, Anda akan melihat detail status di bilah status:
Menggunakan tindakan Git di Visual Studio
Berikut adalah ringkasan singkat tindakan Git yang tersedia di bilah status Visual Studio:
Panah Naik/Turun menunjukkan berapa banyak commit keluar/masuk dalam cabang Anda saat ini. Anda dapat menggunakan ikon ini untuk menarik commit masuk atau mendorong commit keluar apa pun.
Untuk melihat commit tertentu, pilih panah Atas/Bawah, lalu pilih Lihat Perubahan yang Keluar/Masuk.
Pensil menunjukkan jumlah perubahan yang tidak dilakukan pada kode Anda. Anda dapat memilih ikon ini untuk melihat perubahan tersebut di jendela Perubahan Git.
Menu Git menyediakan alat untuk tindakan repositori pada file Anda. Anda dapat menggunakan git fetch, pull, push, dan sync untuk kontrol versi di Visual Studio.
Untuk informasi selengkapnya tentang cara menggunakan Git dengan aplikasi Anda, lihat Tentang Git di Visual Studio.
Ulasan: Kode selesai
Dalam tutorial ini, Anda membuat banyak perubahan pada aplikasi Kalkulator. Aplikasi ini sekarang menangani sumber daya komputasi dengan lebih efisien, dan menangani sebagian besar kesalahan input pengguna.
Berikut adalah kode lengkapnya, semuanya di satu tempat:
class Calculator
{
public static double DoOperation(double num1, double num2, string op)
{
double result = double.NaN; // Default value is "not-a-number" which we use if an operation, such as division, could result in an error.
// Use a switch statement to do the math.
switch (op)
{
case "a":
result = num1 + num2;
break;
case "s":
result = num1 - num2;
break;
case "m":
result = num1 * num2;
break;
case "d":
// Ask the user to enter a non-zero divisor.
if (num2 != 0)
{
result = num1 / num2;
}
break;
// Return text for an incorrect option entry.
default:
break;
}
return result;
}
}
class Program
{
static void Main(string[] args)
{
bool endApp = false;
// Display title as the C# console calculator app.
Console.WriteLine("Console Calculator in C#\r");
Console.WriteLine("------------------------\n");
while (!endApp)
{
// Declare variables and set to empty.
string numInput1 = "";
string numInput2 = "";
double result = 0;
// Ask the user to type the first number.
Console.Write("Type a number, and then press Enter: ");
numInput1 = Console.ReadLine();
double cleanNum1 = 0;
while (!double.TryParse(numInput1, out cleanNum1))
{
Console.Write("This is not valid input. Please enter a numeric value: ");
numInput1 = Console.ReadLine();
}
// Ask the user to type the second number.
Console.Write("Type another number, and then press Enter: ");
numInput2 = Console.ReadLine();
double cleanNum2 = 0;
while (!double.TryParse(numInput2, out cleanNum2))
{
Console.Write("This is not valid input. Please enter a numeric value: ");
numInput2 = Console.ReadLine();
}
// Ask the user to choose an operator.
Console.WriteLine("Choose an operator from the following list:");
Console.WriteLine("\ta - Add");
Console.WriteLine("\ts - Subtract");
Console.WriteLine("\tm - Multiply");
Console.WriteLine("\td - Divide");
Console.Write("Your option? ");
string op = Console.ReadLine();
try
{
result = Calculator.DoOperation(cleanNum1, cleanNum2, op);
if (double.IsNaN(result))
{
Console.WriteLine("This operation will result in a mathematical error.\n");
}
else Console.WriteLine("Your result: {0:0.##}\n", result);
}
catch (Exception e)
{
Console.WriteLine("Oh no! An exception occurred trying to do the math.\n - Details: " + e.Message);
}
Console.WriteLine("------------------------\n");
// Wait for the user to respond before closing.
Console.Write("Press 'n' and Enter to close the app, or press any other key and Enter to continue: ");
if (Console.ReadLine() == "n") endApp = true;
Console.WriteLine("\n"); // Friendly linespacing.
}
return;
}
}
class Calculator
{
public static double DoOperation(double num1, double num2, string op)
{
double result = double.NaN; // Default value is "not-a-number" which we use if an operation, such as division, could result in an error.
// Use a switch statement to do the math.
switch (op)
{
case "a":
result = num1 + num2;
break;
case "s":
result = num1 - num2;
break;
case "m":
result = num1 * num2;
break;
case "d":
// Ask the user to enter a non-zero divisor.
if (num2 != 0)
{
result = num1 / num2;
}
break;
// Return text for an incorrect option entry.
default:
break;
}
return result;
}
}
class Program
{
static void Main(string[] args)
{
bool endApp = false;
// Display title as the C# console calculator app.
Console.WriteLine("Console Calculator in C#\r");
Console.WriteLine("------------------------\n");
while (!endApp)
{
// Declare variables and set to empty.
// Use Nullable types (with ?) to match type of System.Console.ReadLine
string? numInput1 = "";
string? numInput2 = "";
double result = 0;
// Ask the user to type the first number.
Console.Write("Type a number, and then press Enter: ");
numInput1 = Console.ReadLine();
double cleanNum1 = 0;
while (!double.TryParse(numInput1, out cleanNum1))
{
Console.Write("This is not valid input. Please enter a numeric value: ");
numInput1 = Console.ReadLine();
}
// Ask the user to type the second number.
Console.Write("Type another number, and then press Enter: ");
numInput2 = Console.ReadLine();
double cleanNum2 = 0;
while (!double.TryParse(numInput2, out cleanNum2))
{
Console.Write("This is not valid input. Please enter a numeric value: ");
numInput2 = Console.ReadLine();
}
// Ask the user to choose an operator.
Console.WriteLine("Choose an operator from the following list:");
Console.WriteLine("\ta - Add");
Console.WriteLine("\ts - Subtract");
Console.WriteLine("\tm - Multiply");
Console.WriteLine("\td - Divide");
Console.Write("Your option? ");
string? op = Console.ReadLine();
// Validate input is not null, and matches the pattern
if (op == null || ! Regex.IsMatch(op, "[a|s|m|d]"))
{
Console.WriteLine("Error: Unrecognized input.");
}
else
{
try
{
result = Calculator.DoOperation(cleanNum1, cleanNum2, op);
if (double.IsNaN(result))
{
Console.WriteLine("This operation will result in a mathematical error.\n");
}
else Console.WriteLine("Your result: {0:0.##}\n", result);
}
catch (Exception e)
{
Console.WriteLine("Oh no! An exception occurred trying to do the math.\n - Details: " + e.Message);
}
}
Console.WriteLine("------------------------\n");
// Wait for the user to respond before closing.
Console.Write("Press 'n' and Enter to close the app, or press any other key and Enter to continue: ");
if (Console.ReadLine() == "n") endApp = true;
Console.WriteLine("\n"); // Friendly linespacing.
}
return;
}
}
Langkah berikutnya
Lanjutkan dengan bagian kedua dari tutorial ini: