C = an * Mn + an-1 * Mn-1 + ... + a1 * M + a0. (формулу пришлось найти в интернете да не покорает меня администрация, ибо переписывать ее очень долго)
Девушка, теперь поясню как ей пользоваться на одном примере - для остальных напишу только ответы:
101101 - число в двоичной системе измерения
осуществляем перевод в десятичную:
у нас 6 разрядов - отсюда следует, что n=5(т.к. отсчет ведется с нуля)
раскладываем данный многочлен по вышеуказанной формуле:
С=1*2^5+0*2^4+1*2^3+1*2^2+0*2+1=32+8+4+1=45
ответ: 45.
Теперь по списку начиная со второго:
1000 1000 = 136
152
94
102
103
95
46
38
39
43
84
60
30
22
23
27
105
121
120
40
41
57
30
37
Решалось примерно следующим образом:
Объявить две переменные для числа n и суммы чисел. А хотя нет. Надо три(ещё управляющая переменная для for)
Ввести число n
Зная, что натуральные числа - это все числа от единицы, создаём цикл for с таким условием: управляющая переменная i = 1, i < n i++(увеличить на 1)
(на паскале будет примерно так:
for i := 1 to (n - 1) do
begin
end;
)
Далее в теле цикла сделать условие: если i делится без остатка, то прибавить это число к переменной для суммы чисел(которая в начале равна 0)
Ну и в конце вывести сумму.
Вот вариант на C++
#include <iostream>
using std::cout;
using std::cin;
using std::endl;
int main()
{
int n, total = 0;
cout << "Enter the number: ";
cin >> n;
for(int i = 1; i < n; i++)
{
if(i % 3 == 0)
{
total += i;
}
}
cout << "Sum = " << total << endl;
cin.get();
return 0;
}
Вроде и на Паскале получилось:
program test;
var i, n, total:integer;
begin
write('Enter n: ');
readln(n);
total := 0;
for i := 1 to (n - 1) do
begin
if i mod 3 = 0 then
total := total + i;
end;
writeln('sum = ', total);
readln();
end.