Я сомневаюсь в своем назначении, которое я пытался сделать, но я не думаю, что код верен, так что если кто-нибудь может мне помочь с этим.
Вопрос в том, что я должен написать C-функцию с именем CalculateOddEven
, которая переводит pointer
в
целое число a
и действительные целые числа b
и c
, функция должна вернуть и
фактическое целое число Функция должна генерировать случайное число между b
и
c
, а затем экспортируйте ближайшее четное число (либо само число, либо
предыдущий номер), при этом возвращая ближайший положительный номер (либо
сам номер или следующий номер).
Для полноты вы должны заполнить генератор случайных чисел в вашем
функция.
The algorithm Must NOT use modulo, if statements, case statements, ternary
operators, or any other form of selection control.
Hint : Use bitwise operators
int CalculateOddEven()
{
int * a;
int b, c;
int count = 1;
b = 5;
c = 20;
int n, num, e;
int i;
for (i = 0; i < count; i++) {
num = (rand() %
(c - b + 1)) + b;
}
n = num & 1;
while(n != 0){
e = num - 1;
n = e & 1;
}
printf("%d", e);
return num;
}
int main()
{
srand(time(0));
printf(" %d", CalculateOddEven());
return 0;
}
Я пробовал этот код, но мне нужно собрать все это в одну функцию и получить точные результаты, а результаты не постоянны.