Я пытаюсь подсчитать количество времени, в течение которого каждый символ появляется в строке, я использую переключатели и цикл for, однако они не увеличиваются должным образом. Вот мой код
let countChar x =
match x with
'A'-> countA := !countA +1;
|'C'-> countC := !countC +1;
|'T'-> countT := !countT +1;
|'G'-> countG := !countG +1;
;;
let demoStri = "ACGTACGT" in
for j = 0 to 7 do
countChar demoStri.[j];
let tempA = !countA in
print_int tempA;
print_string "\n";
let tempC = !countC in
print_int tempC;
print_string "\n";
let tempG = !countG in
print_int tempG;
print_string "\n";
let tempT = !countT in
print_int tempT;
print_string "\n";
done
Но по какой-то причине он только увеличивает 1 и возвращает 1 0 0 0, 2 0 0 0, 3 0 0 0 и так далее..... Мне было интересно, что-то пошло не так в процессе?