gpt4 book ai didi

c++ - 用循环求解数组中的方程

转载 作者:行者123 更新时间:2023-11-30 05:32:57 24 4
gpt4 key购买 nike

一个'N'个整数的数组,需要计算下一个等式:

у = х1 * (х1 + х2) * (х1 + х2 + х3) * ... * (x1 + ... + xN)

我有两个问题:

  1. 是否有更好的方法找到解决方案 y
  2. 如何生成不为0的随机数?

代码:

srand(time(NULL));
const int size = 10;
int arr[size];
int pro=1;
for (int i = 0; i < size; i++)
{
arr[i] = rand() % 10;
}
for (int i = 0; i < size; i++)
{
cout << arr[i] << ' ';
}

cout << endl;

for (int i = 0; i < size; i++)
{
int sum = 0;

for (int j = 0; j <= i; j++)
{
sum = arr[j];
}
pro *= sum;
}
cout << pro << endl;

最佳答案

How to generate random number except 0?

arr[i] = rand() % 9 + 1; // rando number in range 1 .. 9

Is there a better way to find the solution y?

long  pro = 1;
long sum = 0;
for (int i = 0; i < size; i++)
{
sum += arr[i]; // i==0: x1, i==1: x1+x2, i==3: x1+x2+x3, ....
pro *= sum;
}

这应该是您的代码:

srand(time(NULL));
const int size = 10;
int arr[size];
for (int i = 0; i < size; i++)
arr[i] = rand() % 9 + 1;

for (int i = 0; i < size; i++)
cout << arr[i] << ' ';

cout << endl;

long pro = 1;
long sum = 0;
for (int i = 0; i < size; i++)
{
sum += arr[i];
pro *= sum;
}
cout << pro << endl;

关于c++ - 用循环求解数组中的方程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34956227/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com