• ACM1003


    这个题目相对简单,就是浮点数为零的判断,这个要记住,判断浮点数是否为零,是不能直接用等于号的。例如Double m=0;if(m==0);//是错误的。要用(m-0<1e-6)两个相减得到的数据是否小于1e-6值。也许是C++用得习惯些,写起来顺手,用java写,老是有些语法错误,不过还是解决了。

    这个题目是这样的:

    最终就是求:1/2+1/3....+1/(n+1)的和接近用户输入的数据。

    C++代码:

     1 #include <iostream>
    2 #include <vector>
    3 #include <math.h>
    4 using namespace std;
    5
    6 int main ()
    7 {
    8 double m_som;
    9 vector<int> m_cards;//用到了vector,装最终得到的结果
    10 while ( cin >> m_som )//输入数据
    11 {
    12 double m_compute=0;
    13 int n=1;
    14 if ( (m_som-0)<=1E-6)//判断出口,是否等于零
    15 {
    16 break;
    17 }
    18 while ( (m_som - m_compute)> 1e-6 )//两个相减是否接近零
    19 {
    20 m_compute=m_compute+(double)1/(double)(n+1);//求和
    21 n++;
    22 }
    23 m_cards.push_back(n);//加入vector
    24 }
    25 for ( vector<int>::size_type it=0;it!=m_cards.size();++it)//输出
    26 {
    27 cout<<m_cards[it]-1<<" "<<"card(s)"<<endl;
    28 }
    29 system("pause");
    30 return 0;
    31 }

    下面是java代码,两个相似:

    View Code
     1 import java.io.*;
    2 import java.util.*;
    3 import java.math.*;
    4
    5 public class four
    6 {
    7 public static void main(String args[])throws Exception
    8 {
    9 double m_comptu;
    10 Vector<Integer > m_v=new Vector<Integer >();
    11 Scanner in=new Scanner(System.in);
    12 while(in.hasNext())
    13 {
    14 Integer n=1;
    15 double m_sum=0;
    16 m_comptu=in.nextDouble();
    17 if(m_comptu-0<1e-6)break;
    18 while(m_comptu-m_sum>1e-6)
    19 {
    20 m_sum=m_sum+(double)1/(double)(n+1);
    21 n++;
    22 }
    23 m_v.addElement(n);
    24 }
    25 for(Integer t=0;t!=m_v.size();++t)
    26 {
    27 Integer m=m_v.elementAt(t);
    28 m=m-1;
    29 System.out.println(m+" "+"card(s)");
    30 }
    31 }
    32 }

    写这个java代码,让我知道了在用到vector等容器时,是不能用内置类型int的,因为vector里面装的是对象,就用到了Integer这个类来表示int,这个让我找了好久的错误,老是想不通为什么,终于找到这个答案了。

     

  • 相关阅读:
    PHP面向对象之原型(trait)
    PHP面向对象之命名空间
    Javascript中的Copy()函数
    六、unique_lock取代lock_guard
    五、互斥量
    四、创建和等待多个线程
    三、线程传参
    二、线程的启动与结束 join与detach
    HTTP:常见状态码
    HTTP:简述URL、URN和URI
  • 原文地址:https://www.cnblogs.com/leewiki/p/2285845.html
Copyright © 2020-2023  润新知