从1开始编码,而不是从0开始

Starting Code from 1 instead of 0?

本文关键字:开始 编码      更新时间:2023-10-16
#include<iostream>
using namespace std;
int main()
int quantity = 0;
int a = 0;
int b = 0;
int x = 0;
int y = 0;
int z;
double region[5][6];
int shipping = 20.00;
region[0][0] = 0;

for (x=0;x<5;x++) {
    for (y=0; y<6; y++) {
        z=x;
       if(y == 0)
       {region[x][y] = y + 1 + z;}
       else if(y == 1)
       {region[x][y] =  region[x][y-1] * 2;}
           else if(y == 2)
           {region[x][y] = region[x][y-1]  + .50;}
               else if(y == 3)
                   {region[x][y] = region[x][y-1] + .50;}
                   else if(y == 4)
                   {region[x][y] = region[x][y-1] + .250;}
                       else 
                       {region[x][y] = region[x][y-1] + .250;}
    }
}
cout<<"Please input the region"<<endl;
cin>>a;
cout<<"Enter quantity"<<endl;
cin>>quantity;
if (quantity > 6)
{b = 5;}
else
{b = quantity;}
cout<<"The price of shipping comes out to: "<<region[a][b] + shipping<<" Since $20 is added for the shipping cost"<<endl;
return 0 ;

}

现在我要输入0,0区域和数量来得到第一个单元格。但是因为我从区域1和量1开始,我要让用户输入1,1。我将如何用c++来做这些呢?谢谢!

在用户进入区域后验证所有值是否大于0。如果它们是,从它们中减去一个,然后像你现在一样处理数据。

if(a < 1) a = 1;
if(quantity < 1) quantity = 1;
// Subtract 1 from the values
a--;
quantity--;
if (quantity > 6)
{b = 5;}
else
{b = quantity;}
cout<<"The price of shipping comes out to: "<<region[a][b] + shipping<<" Since $20 is added for the shipping cost"<<endl;

每个值减去1怎么样?

cout<<"Please input the region"<<endl;
cin>>a;
cout<<"Enter quantity"<<endl;
cin>>quantity;
--a;
--quantity;