Facebook Sharer
选择您要替换的背景颜色:
【农历新年】背景图片:
个性化设定
 注册  找回密码
查看: 3134|回复: 11
打印 上一主题 下一主题

很急!你们懂这题怎样做吗?programming来的!

[复制链接]

0

主题

0

好友

604

积分

青铜长老

Rank: 7Rank: 7Rank: 7Rank: 7Rank: 7Rank: 7Rank: 7

跳转到指定楼层
1#
发表于 2009-2-25 03:04 PM |只看该作者 |倒序浏览
题目:一定做在function outside the class。
write a program to accept operator(+,-,*,/) from the user,perform the calaulation by accepting another two number from the keyboard and display its sum.
for example,if the operator accepted is "+",key in two numbers ,perform the addition opearation and display its sum.
For any other value,display the text "Invalid Input".


我做到这里。。答案错了。。

# include<iostream.h>
  class number

{

      public:float x,y,c;
          char opt;
      
          void input();


          void output();

};

      void number::input()
{
          cout<<"\nEnter the first number :";
      cin>>x;
          cout<<"\nEnter the second nunber :";
          cin>>y;
          cout<<"\nEnter the operator(+,-,*,/)";
          cin>>opt;
}
         





         {
  
    void number:utput()

{       
    switch(opt);
       
       
        case (opt="+")
                   z=x+y;
              cout<<"\nBreak";

    case (opt="-")
            z=x-y;
                cout<<"\nBreak"

    case (opt="*")                 
                z=x*y;
                    cout<<"\nBreak";
   
        case (opt="/")
            z=x/y;
                cout<<"\nBreak";

    else
             "!Wrong Entry"

}
  
       
    void number::display()

{
    cout<<"\nThe first number is :";  
    cout<<"\nThe second number is :"
  
}

    void  main()
          number obj;
     
          cout<<"\nThe result is :";
          obj.input();


              cout<<"\nThe result :";
          obj.output();
              obj.opt();
}




收藏收藏0

7

主题

1

好友

5108

积分

一流名嘴

Rank: 12Rank: 12Rank: 12

2#
发表于 2009-2-25 05:05 PM |只看该作者
原帖由 heritaa 于 2009-2-25 03:04 PM 发表
题目:一定做在function outside the class。
write a program to accept operator(+,-,*,/) from the user,perform the calaulation by accepting another two number from the keyboard and display its sum.
for example,if the operator accepted is "+",key in two numbers ,perform the addition opearation and display its sum.
For any other value,display the text "Invalid Input".


我做到这里。。答案错了。。

# include<iostream.h>
  class number

{

      public:float x,y,c;
          char opt;
      
          void input();


          void output();

};

      void number::input()
{
          cout<<"\nEnter the first number :";
      cin>>x;
          cout<<"\nEnter the second nunber :";
          cin>>y;
          cout<<"\nEnter the operator(+,-,*,/)";
          cin>>opt;
}
         





         {
  
    void number:: output()

{      
    switch(opt);
      
      
        case (opt="+")
                   z=x+y;
              cout<<"\nBreak";

    case (opt="-")
            z=x-y;
                cout<<"\nBreak"

    case (opt="*")                 
                z=x*y;
                    cout<<"\nBreak";
   
        case (opt="/")
            z=x/y;
                cout<<"\nBreak";

    else
             "!Wrong Entry"

}
  
      
    void number::display()

{
    cout<<"\nThe first number is :";  
    cout<<"\nThe second number is :"
  
}

    void  main()
          number obj;
     
          cout<<"\nThe result is :";
          obj.input();


              cout<<"\nThe result :";
          obj.output();
              obj.opt();
}


1. z变数和display函数没初始
2. output函数中没输出答案
3. 也没定义opt()

p/s: 程式畏首畏尾贴不完整,這類问题请在编程区发问


回复

使用道具 举报

26

主题

1

好友

2082

积分

白金长老

Rank: 10

3#
发表于 2009-2-25 07:56 PM |只看该作者
这个很简单...不过我懒惰帮你看....我得空再帮你看吧
什么时候要
不过番茄兄已经纠正你的错误了

[ 本帖最后由 丧送狂曲 于 2009-2-25 08:02 PM 编辑 ]


回复

使用道具 举报

5

主题

2

好友

3194

积分

本站名嘴

Rank: 11Rank: 11

4#
发表于 2009-2-28 01:50 PM |只看该作者
看来看去不懂错什么。。。
            int[] a = { 3, 100, 2, 2, 3, 0, 4 }; //2x100+3x2+4
            int[] b = { 3, 98, 6, 2, 4, 1, 1 };  //6x98+4x2+x
            int[] c = new int[22];
            int p = 2, q = 2, r = 2;
            while (p <= a[1] * 2 && q <= b[1] * 2)
            {
                if (a[p] == b[q])
                {
                    c[r] = a[p]; c[r + 1] = a[p + 1] + b[q + 1];
                    p += 2; q += 2; r += 2;
                }
                else if (a[p] > b[q])
                {
                    c[r] = a[p]; c[r + 1] = a[p + 1];
                    r += 2;
                    c[r] = b[q]; c[r + 1] = b[q + 1];
                    r += 2;
                }
                else
                {
                    c[r] = b[q]; c[r + 1] = b[q + 1];
                    r += 2;
                    c[r] = a[p]; c[r + 1] = a[p + 1];
                    r += 2;
                }
            }
            c[1] = (r - 1) / 2;
            for (int i = 2; i <= p; i++)
            {
                if (a != 0)
                    Console.Write(a[i + 1] + "x" + a);
                else
                    Console.Write(a[i + 1]);
                if (a != p)
                    Console.Write("+");
            }
            for (int j = 2; j <= q; j++)
            {
                if (b[j] != 0)
                    Console.Write(b[j + 1] + "x" + b[j]);
                else
                    Console.Write(b[j + 1]);
                if (b[j] != q)
                    Console.Write("+");
            }
            Console.WriteLine("--------------------");
            for (int k = 2; k <= r; k++)
            {
                if (c[k] != 0)
                    Console.Write(c[k + 1] + "x" + c[k]);
                else
                    Console.Write(c[k + 1]);
                if (c[k] != r)
                    Console.Write("+");
            }


回复

使用道具 举报

62

主题

5

好友

3715

积分

本站名嘴

Rank: 11Rank: 11

5#
发表于 2009-2-28 02:32 PM |只看该作者
懒惰看
不过Array是从0开始


回复

使用道具 举报

5

主题

2

好友

3194

积分

本站名嘴

Rank: 11Rank: 11

6#
发表于 2009-2-28 04:07 PM |只看该作者
原帖由 goodhermit95 于 2009-2-28 02:32 PM 发表
懒惰看
不过Array是从0开始

哈哈忘记加0
我书用运算式给题目的他没加0我就没加到

  1.             int[] a = { 0, 3, 100, 2, 2, 3, 0, 4 }; //2x100+3x2+4
  2.             int[] b = { 0, 3, 98, 6, 2, 4, 1, 1 };  //6x98+4x2+x
  3.             int[] c = new int[22];
  4.             int p = 2, q = 2, r = 2;
  5.             while (p <= a[1] * 2 && q <= b[1] * 2)
  6.             {
  7.                 if (a[p] == b[q])
  8.                 {
  9.                     c[r] = a[p]; c[r + 1] = a[p + 1] + b[q + 1];
  10.                     p += 2; q += 2; r += 2;
  11.                 }
  12.                 else if (a[p] > b[q])
  13.                 {
  14.                     c[r] = a[p]; c[r + 1] = a[p + 1];
  15.                     r += 2;
  16.                     c[r] = b[q]; c[r + 1] = b[q + 1];
  17.                     r += 2;
  18.                 }
  19.                 else
  20.                 {
  21.                     c[r] = b[q]; c[r + 1] = b[q + 1];
  22.                     r += 2;
  23.                     c[r] = a[p]; c[r + 1] = a[p + 1];
  24.                     r += 2;
  25.                 }
  26.             }
  27.             c[1] = (r - 1) / 2;
  28.             for (int i = 2; i <= p; i++)
  29.             {
  30.                 if (a[i] != 0)
  31.                     Console.Write(a[i + 1] + "x" + a);
  32.                 else
  33.                     Console.Write(a[i + 1]);
  34.                 if (a[i] != p)
  35.                     Console.Write("+");
  36.             }
  37.             for (int j = 2; j <= q; j++)
  38.             {
  39.                 if (b[j] != 0)
  40.                     Console.Write(b[j + 1] + "x" + b[j]);
  41.                 else
  42.                     Console.Write(b[j + 1]);
  43.                 if (b[j] != q)
  44.                     Console.Write("+");
  45.             }
  46.             Console.WriteLine("--------------------");
  47.             for (int k = 2; k <= r; k++)
  48.             {
  49.                 if (c[k] != 0)
  50.                     Console.Write(c[k + 1] + "x" + c[k]);
  51.                 else
  52.                     Console.Write(c[k + 1]);
  53.                 if (c[k] != r)
  54.                     Console.Write("+");
  55.             }
复制代码

还是不行。。。

[ 本帖最后由 Jay1515Jay 于 2009-2-28 04:13 PM 编辑 ]


回复

使用道具 举报

62

主题

5

好友

3715

积分

本站名嘴

Rank: 11Rank: 11

7#
发表于 2009-3-1 10:16 PM |只看该作者
I says the array starts from zero.not must contains zero

I am using iPod so I can't type Chinese
Forum buildin input also can't

编辑:
我说Array从0开始

[ 本帖最后由 goodhermit95 于 2009-3-2 10:23 PM 编辑 ]


回复

使用道具 举报

26

主题

1

好友

2082

积分

白金长老

Rank: 10

8#
发表于 2009-3-2 01:29 AM |只看该作者
你在array过后()里面写是给他assign value哦~确定是你要的吗!?没有题目很难评估


回复

使用道具 举报

5

主题

2

好友

3194

积分

本站名嘴

Rank: 11Rank: 11

9#
发表于 2009-3-2 12:14 PM |只看该作者
原帖由 丧送狂曲 于 2009-3-2 01:29 AM 发表
你在array过后()里面写是给他assign value哦~确定是你要的吗!?没有题目很难评估

题目是要算出什么formula啊。。。
就是(2x100+3x2+4)+(6x98+4x2+x)
大概懂什么错了...放学回来写

原帖由 goodhermit95 于 2009-3-1 10:16 PM 发表
I says the array starts from zero.not must contains zero

I am using iPod so I can't type Chinese
Forum buildin input also can't

我不要用a[0],b[0],c[0]运算法 ^98,^100... 是在a[2],b[2]没错
用ipod也回我的帖 感谢感谢em0009

[ 本帖最后由 Jay1515Jay 于 2009-3-2 12:51 PM 编辑 ]


回复

使用道具 举报

5

主题

2

好友

3194

积分

本站名嘴

Rank: 11Rank: 11

10#
发表于 2009-3-3 12:28 AM |只看该作者
弄到了~~

  1.             int[] a = { 0, 3, 100, 2, 2, 3, 0, 4 }; //2x100+3x2+4
  2.             int[] b = { 0, 3, 98, 6, 2, 4, 1, 1 };  //6x98+4x2+x
  3.             int[] c = new int[22];
  4.             int p = 2, q = 2, r = 2;
  5.             while (p <= a[1] * 2 && q <= b[1] * 2)
  6.             {
  7.                 if (a[p] == b[q])
  8.                 {
  9.                     c[r] = a[p]; c[r + 1] = a[p + 1] + b[q + 1];
  10.                     p += 2; q += 2; r += 2;
  11.                 }
  12.                 else if (a[p] > b[q])
  13.                 {
  14.                     c[r] = a[p]; c[r + 1] = a[p + 1];
  15.                     r += 2;
  16.                     c[r] = b[q]; c[r + 1] = b[q + 1];
  17.                     r += 2; p += 2; q += 2;
  18.                 }
  19.                 else
  20.                 {
  21.                     c[r] = b[q]; c[r + 1] = b[q + 1];
  22.                     r += 2;
  23.                     c[r] = a[p]; c[r + 1] = a[p + 1];
  24.                     r += 2; p += 2; q += 2;
  25.                 }
  26.             }
  27.             c[1] = (r - 1) / 2;
  28.             for (int i = 2; i < p; i += 2)
  29.             {
  30.                 if (a[i] != 0 && a[i] != 1 && a[i + 1] != 1)
  31.                     Console.Write(a[i + 1] + "x" + a[i]);
  32.                 if (a[i] == 1 && a[i + 1] == 1)
  33.                     Console.Write("x");
  34.                 if (a[i] == 0)
  35.                     Console.Write(a[i + 1]);
  36.                 if (i == p - 2)
  37.                     Console.Write("");
  38.                 else
  39.                     Console.Write(" + ");
  40.             }
  41.             Console.WriteLine();
  42.             for (int j = 2; j < q; j += 2)
  43.             {
  44.                 if (b[j] != 0&&b[j] != 1 && b[j + 1] != 1)
  45.                     Console.Write(b[j + 1] + "x" + b[j]);
  46.                 if (b[j] == 1 && b[j + 1] == 1)
  47.                     Console.Write("x");
  48.                 if (b[j] == 0)
  49.                     Console.Write(b[j + 1]);
  50.                 if (j == q - 2)
  51.                     Console.Write("");
  52.                 else
  53.                     Console.Write(" + ");
  54.             }
  55.             Console.WriteLine();
  56.             for (int h = 1; h <= 30; h++)
  57.                 Console.Write("-");
  58.             Console.WriteLine();
  59.             for (int k = 2; k < r; k += 2)
  60.             {
  61.                 if (c[k] != 0 && c[k] != 1 && c[k + 1] != 1)
  62.                     Console.Write(c[k + 1] + "x" + c[k]);
  63.                 if(c[k]==0)
  64.                     Console.Write(c[k + 1]);
  65.                 if (c[k] == 1 && c[k + 1] == 1)
  66.                     Console.Write("x");
  67.                 if (k == r - 2)
  68.                     Console.Write("");
  69.                 else
  70.                     Console.Write(" + ");
  71.             }
  72.             Console.WriteLine();
  73.         }
复制代码


回复

使用道具 举报

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

JBTALKS.CC |联系我们 |隐私政策 |Share

GMT+8, 2024-11-29 07:14 AM , Processed in 0.105841 second(s), 26 queries .

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

Ultra High-performance Dedicated Server powered by iCore Technology Sdn. Bhd.
Domain Registration | Web Hosting | Email Hosting | Forum Hosting | ECShop Hosting | Dedicated Server | Colocation Services
本论坛言论纯属发表者个人意见,与本论坛立场无关
Copyright © 2003-2012 JBTALKS.CC All Rights Reserved
合作联盟网站:
JBTALKS 马来西亚中文论坛 | JBTALKS我的空间 | ICORE TECHNOLOGY SDN. BHD.
回顶部