fork download
  1. #include <stdio.h>
  2.  
  3. // Fungsi untuk menghitung dan menampilkan persentase
  4. void hitung_persentase_genetika() {
  5. // Diasumsikan persilangan monohibrid dari dua induk heterozigot (Bb x Bb)
  6. // Proporsi genotipe F1: 1 BB : 2 Bb : 1 bb
  7. // Total perbandingan unit: 4.0
  8.  
  9. const float total_unit = 4.0;
  10.  
  11. // Perbandingan Genotipe
  12. const float unit_homozigot_dominan = 1.0; // BB
  13. const float unit_heterozigot = 2.0; // Bb
  14. const float unit_homozigot_resesif = 1.0; // bb
  15.  
  16. // Perbandingan Fenotipe
  17. // Fenotipe Dominan (BB + Bb) -> 3 unit
  18. const float unit_fenotipe_dominan = unit_homozigot_dominan + unit_heterozigot;
  19. // Fenotipe Resesif (bb) -> 1 unit
  20. const float unit_fenotipe_resesif = unit_homozigot_resesif;
  21.  
  22. printf("==========================================================\n");
  23. printf(" 🧪 Program Persentase Sifat Keturunan F1\n");
  24. printf(" (Asumsi Persilangan Heterozigot: Bb x Bb)\n");
  25. printf("==========================================================\n");
  26.  
  27. // Menghitung dan Menampilkan Persentase Genotipe
  28. float persen_BB = (unit_homozigot_dominan / total_unit) * 100.0;
  29. float persen_Bb = (unit_heterozigot / total_unit) * 100.0;
  30. float persen_bb = (unit_homozigot_resesif / total_unit) * 100.0;
  31.  
  32. printf("\n--- Persentase Genotipe F1 (Rasio 1:2:1) ---\n");
  33. // Menggunakan "%.2f" untuk menampilkan 2 angka di belakang koma
  34. printf("1. Homozygot Dominan (BB): %.2f %%\n", persen_BB);
  35. printf("2. Heterozygot (Bb): %.2f %%\n", persen_Bb);
  36. printf("3. Homozygot Resesif (bb): %.2f %%\n", persen_bb);
  37. printf("----------------------------------------------------------\n");
  38.  
  39.  
  40. // Menghitung dan Menampilkan Persentase Fenotipe
  41. float persen_fenotipe_dominan = (unit_fenotipe_dominan / total_unit) * 100.0;
  42. float persen_fenotipe_resesif = (unit_fenotipe_resesif / total_unit) * 100.0;
  43.  
  44. printf("\n--- Persentase Fenotipe F1 (Rasio 3:1) ---\n");
  45. printf("1. Fenotipe Dominan (Sifat B): %.2f %%\n", persen_fenotipe_dominan);
  46. printf("2. Fenotipe Resesif (Sifat b): %.2f %%\n", persen_fenotipe_resesif);
  47. printf("----------------------------------------------------------\n");
  48. }
  49.  
  50. // Fungsi utama program
  51. int main() {
  52. hitung_persentase_genetika();
  53. return 0;
  54. }
Success #stdin #stdout 0s 5320KB
stdin
2 2
0 0
0 0                        
stdout
==========================================================
       🧪 Program Persentase Sifat Keturunan F1
         (Asumsi Persilangan Heterozigot: Bb x Bb)
==========================================================

--- Persentase Genotipe F1 (Rasio 1:2:1) ---
1. Homozygot Dominan (BB): 25.00 %
2. Heterozygot (Bb):       50.00 %
3. Homozygot Resesif (bb): 25.00 %
----------------------------------------------------------

--- Persentase Fenotipe F1 (Rasio 3:1) ---
1. Fenotipe Dominan (Sifat B): 75.00 %
2. Fenotipe Resesif (Sifat b): 25.00 %
----------------------------------------------------------