Ответ 1
Вы имеете в виду что-то вроде этого?
for i, val := uint64(1), uint64(1234567890); i<val; i+=2 {
// your modulus operation
}
Go использует int для итератора по умолчанию из того, что я могу сказать, за исключением того, что я хочу uint64. Я не могу найти способ изменить тип итератора цикла в Go. Есть ли способ сделать это inline с инструкцией for? Тип int по умолчанию вызывает проблемы, когда я пытаюсь что-то сделать в цикле, например mod mod (%).
func main() {
var val uint64 = 1234567890
for i:=1; i<val; i+=2 {
if val%i==0 {
}
}
}
./q.go:7: invalid operation: i < val (mismatched types int and uint64)
./q.go:8: invalid operation: val % i (mismatched types uint64 and int)
Вы имеете в виду что-то вроде этого?
for i, val := uint64(1), uint64(1234567890); i<val; i+=2 {
// your modulus operation
}