佳礼资讯网

 找回密码
 注册

ADVERTISEMENT

搜索
查看: 1198|回复: 9

可以帮我看下..这个code,吗??

[复制链接]
发表于 4-8-2007 09:59 PM | 显示全部楼层 |阅读模式
#include<iostream>
using namespace std;
double Min(double,double,double);
double Max(double,double,double);
int main()
{
        double no1, no2, no3, min, max;

        cout<<"Enter 3 number \n";
        cin>>no1>>no2>>no3;

        min=Min(no1, no2 , no3);
                cout<<"The smaller number is "<<min<<endl;

        max=Max(no1, no2, no3);
                cout<<"The largest number is "<<max<<endl;
                return 0;
}
double Min(double no1, double no2, double no3)
{
        if(no1<no2&&no1<no3)
                return no1;
        if(no2<no1&&no3<no2)
                return no2;
        else if(no3<no1&&no3<no2)
                return no3;
        else
                cout<<"error"<<endl;
        return 0;
}
double Max(double no1, double no2, double no3)
{
        if(no1>no2&&no1>no3)
                return no1;
        if(no2>no1&&no3>no2)
                return no2;
        else if(no3>no1&&no3>no2)
                return no3;
        else
                cout<<"error"<<endl;
        return 0;
}


可以帮我看下..这个code,吗??
我的lagernumber 一直拿不到的比如1 2 3
他的lagernumber给我2 而不是  3

还有如果我要做成20组号码..有没有比较短的方法呢?
回复

使用道具 举报


ADVERTISEMENT

发表于 4-8-2007 10:31 PM | 显示全部楼层
double no1, no2, no3, min, max;

        cout<<"Enter 3 number \n";
        cin>>no1>>no2>>no3;
------------------------
这部分可以用array
double num[3];
cout <<"Enter 3 numbers\n";
for(int i=0;i<3;i++)
cin >>num;

-----------------------
然后那个
double min(double a,double b)
{
   if(a>b)
   return b;
   else
   return a;
}

--->call function时候, 要比较3个号码
-->   min( num[0], min(num[1],num[2]) ); 可以这样 最里面的会return最小的号码
----------
max也一样咯
回复

使用道具 举报

发表于 5-8-2007 12:17 AM | 显示全部楼层
原帖由 tayar18 于 4-8-2007 09:59 PM 发表
#include
using namespace std;
double Min(double,double,double);
double Max(double,double,double);
int main()
{
        double no1, no2, no3, min, max;

        coutno1>>no2>>no3;

        min=Min(no1, no2 , ...

  1. double Min(double no1, double no2, double no3)
  2. {
  3.         double tmp = no1;
  4.         if(no2 < tmp) tmp = no2;
  5.         if(no3 < tmp) tmp = no3;
  6.         return tmp;
  7. }
  8. double Max(double no1, double no2, double no3)
  9. {
  10.         double tmp = no1;
  11.         if(no2 > tmp) tmp = no2;
  12.         if(no3 > tmp) tmp = no3;
  13.         return tmp;
  14. }

复制代码
回复

使用道具 举报

 楼主| 发表于 5-8-2007 12:29 AM | 显示全部楼层

回复 #2 呵呵哟 的帖子

double min(double a,double b)
{
   if(a>b)
   return b;
   else
   return a;
}

这个......20个series也是酱吗??
回复

使用道具 举报

发表于 5-8-2007 01:16 AM | 显示全部楼层
原帖由 tayar18 于 5-8-2007 12:29 AM 发表
double min(double a,double b)
{
   if(a>b)
   return b;
   else
   return a;
}

这个......20个series也是酱吗??


是不是20个号码,找出最小?
是的话

    double num[20];
double mintmp;
for(int i=0;i<20;i++)
{
cout <<"enter num: ";
cin >> num;
}

mintmp = num[0];  //assume 1st num to be min
for(int i=0;i<20;i++)
{
mintmp = min(num,mintmp);  //compare current num wif the stored min, if bigger , then store into mintmp, else, remain.
}

cout << "min = " <<mintmp;
回复

使用道具 举报

发表于 5-8-2007 11:18 AM | 显示全部楼层
原帖由 呵呵哟 于 5-8-2007 01:16 AM 发表
    double num[20];
double mintmp;
for(int i=0;i<20;i++)
{
cout <<"enter num: ";
cin >> num;
}

mintmp = num[0];  //assume 1st num to be min
for(int i=0;i<20;i++)
{
mintmp = min(num[i ],mintmp);  //compare current num wif the stored min, if bigger , then store into mintmp, else, remain.
}

cout << "min = " <<mintmp;


看tayar18写的program,我猜他应该还没有学到array吧,你写这些会不会把他弄乱啊??

     

[ 本帖最后由 hcong85 于 5-8-2007 11:32 AM 编辑 ]
回复

使用道具 举报

Follow Us
 楼主| 发表于 5-8-2007 01:05 PM | 显示全部楼层
这是assignment来得..老师还没教到可是..他要我们自己学咯
回复

使用道具 举报

发表于 6-8-2007 03:38 AM | 显示全部楼层
原帖由 tayar18 于 5-8-2007 01:05 PM 发表
这是assignment来得..老师还没教到可是..他要我们自己学咯


那么 就学咯~
什么不明白可以问 ~ 呵呵 反正迟早的是啊~~~~
回复

使用道具 举报


ADVERTISEMENT

发表于 14-8-2007 05:54 PM | 显示全部楼层
array比较effective&efficiency
回复

使用道具 举报

发表于 23-8-2007 03:32 PM | 显示全部楼层
这个码运用了C++的 dynamic array. user 可以输入任何数目的号码,然后这个码可以显示最大和最小的号码。

#include <iostream>
using namespace std;

double Min(double [], int);
double Max(double [], int);

int main()
{
double *numbers;
int count;
double minNum, maxNum;
cout << "How many numbers you want to enter? ";
cin >> count;

numbers = new double[count];

cout << "Enter " << count << " numbers: ";
for(int x=0; x<count; x++)
{
cin >> numbers[x];
}
minNum = Min(numbers, count);
cout <<"The mininum number is " << minNum << endl;

maxNum = Max(numbers, count);
cout <<"The maximum number is " << maxNum << endl;

return 0;

}

double Min(double array[], int count)
{
double minNo;
minNo = array[0];
for(int x=1; x<count; x++)
{
if(minNo > array[x])
minNo = array[x];
}
return minNo;
}

double Max(double array[], int count)
{
double maxNo;
maxNo = array[0];
for(int x=1; x<count; x++)
{
if(maxNo < array[x])
maxNo = array[x];
}
return maxNo;
}
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

 

ADVERTISEMENT


本周最热论坛帖子本周最热论坛帖子

ADVERTISEMENT



ADVERTISEMENT

ADVERTISEMENT


版权所有 © 1996-2026 Cari Internet Sdn Bhd (483575-W)|IPSERVERONE 提供云主机|广告刊登|关于我们|私隐权|免控|投诉|联络|脸书|佳礼资讯网

GMT+8, 19-3-2026 03:38 PM , Processed in 0.089567 second(s), 24 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表