from random import random
n = int(input())
A = [0.0]*n
first_interval = 0
second_interval = 0
third_interval = 0
fourth_interval = 0
for i in range(n):
A[i] = random()
if 0 <= A[i] < 0.25:
first_interval += 1
elif 0.25 <= A[i] < 0.5:
second_interval += 1
elif 0.5 <= A[i] < 0.75:
third_interval += 1
else:
fourth_interval += 1
print(f'[0; 0,25) - {first_interval}\n[0,25;0,5) - {second_interval}')
print(f'[0,5; 0,75) - {third_interval}\n[0,75;1) - {fourth_interval}')
Объяснение:
Первое задание:
1) 3
2) 6
3) 5
Второе задание:
1) 1
2) 3
Третие:
//Язык программирования java
package com.niksonbinsk;
import java.util.ArrayList;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
int space_left = 0;
int count = 0;
Scanner s = new Scanner(System.in);
ArrayList<Integer> str = new ArrayList<>();
while(space_left != 30){
System.out.println("Enter next num:");
str.add(s.nextInt());
space_left++;
}
for(int i =0;i<30;i++){
if(str.get(i) % 2 == 0){
count++;
}
}
System.out.println(count);
}
}
Объяснение:
Поделитесь своими знаниями, ответьте на вопрос:
Последовательность Хэмминга образуют натуральные числа, не имеющие других простых делителей, кроме 2, 3 и 5. Найти сумму первых N элементов этой последовательности. C++ (+текстовое решение)
например, это можно сделать так:
UPD: изменено
#include <iostream>
#include <set>
#include <cmath>
using namespace std;
bool prime(int n){
for(int i = 2; i * i <= n; i++)
if(n % i == 0)
return false;
return true;
}
signed main() {
int n;
cin >> n;
set<int> ok;
ok.insert(2);
ok.insert(3);
ok.insert(5);
int sum = 0, cnt = 0,cur = 2;
while(cnt != n){
bool norm = true;
for(int i = 2; i * i <= cur; i++)
if(cur % i == 0 && ( ok.find(i) == ok.end() && prime(i)) || (cur % (n/i) == 0 && ok.find(n/i) == ok.end() && prime(n/i)))
norm = false;
if(norm){sum += cur; cnt++;}
cur++;
}
cout << sum;
}