hiatusss 2023-04-26 11:37 采纳率: 66.7%
浏览 7

如何在编写此程序时?(标签-ios|关键词-stream)

在编写此程序时,我试过很多例子,结果都是正确的,但是提交上去就是错的。用类编程是为了练习课上所学成果,请各位帮我看看问题在哪,以下是题目以及我的代码。谢谢!

img

#include<iostream>
using namespace std;

class fraction {
    int p, fenm = 1, fenz = 0; int a[10][2];
public:
    void setgroup(int m, int a[][2]);
    void output();
};

void fraction::setgroup(int m, int c[][2])
{
    int i;
    p = m;
    for (i = 0; i < p; i++) { a[i][0] = c[i][0]; a[i][1] = c[i][1]; }
}

void fraction::output()
{
    int i, j, temp;
    for (i = 0; i < p; i++)
    {
        fenm *= a[i][1];
        for (j = 0; j < p; j++) if (i != j) a[i][0] *= a[j][1];
        fenz += a[i][0];
    }
    if (fenm > fenz) temp = fenm; else temp = fenz;
    for (i = 2; i < temp; i++)
    {
        if (fenz % i == 0 && fenm % i == 0) {
            fenz /= i; fenm /= i;
        }
    }
    if (fenm == 1) cout << fenz;
    else cout << fenz << "/" << fenm;
}

int main()
{
    int n, b[10][2], i; char str;
    cin >> n;
    for (i = 0; i < n; i++) cin >> b[i][0] >> str >> b[i][1];
    fraction fen;
    fen.setgroup(n, b);
    fen.output();
    return 0;
}

  • 写回答

1条回答 默认 最新

  • CSDN-Ada助手 CSDN-AI 官方账号 2023-04-26 15:22
    关注
    • 这篇博客: 个人测试Stream底层原理与逻辑中的 首先我们做一个测试 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:
    • 下面流中的map和forEach函数式接口方法
      通俗来讲,map其实就是类型转换的作用,
      我只是测试所以还是返回的数组,forEach我用作输出控制台

      int[] ints ={1,2,3};
            Arrays.stream(ints).map(arr->{
               int i=0;  i++;
           System.out.println(i+"次");
           return arr;}).forEach(System.out::println);
      

      下面是执行结果

      //执行结果
      1次
      1
      1次
      2
      1次
      3
      

      可以看出其实Stream底层是多线程运行的,有多少数据需要处理就创建多少个线程,而且是并发的,当某线程运行完成,会进入等待状态,等待它线程执行完成,然后以正确的顺序得到结果,之间是没有任何关系的,各运行各自的,但是数据是安全的,至于是不是上了锁,怎么实现的 我就没有没有时间研究了

      通过Stream.of方式测试

         	  Stream.of(1,2,3).map(arr->{
               int i=0;  i++;
            System.out.println(i+"次");
            return arr;}).forEach(System.out::println);
      
    评论

报告相同问题?

问题事件

  • 创建了问题 4月26日

悬赏问题

  • ¥15 qtcp 发送数据时偶尔会遇到发送数据失败?用的MSVC编译器(标签-qt|关键词-tcp)
  • ¥15 cam_lidar_calibration报错
  • ¥15 拓扑学,凸集,紧集。。
  • ¥15 如何扩大AIS数据容量
  • ¥15 单纯型python实现编译报错
  • ¥15 c++2013读写oracle
  • ¥15 c++ gmssl sm2验签demo
  • ¥15 关于模的完全剩余系(关键词-数学方法)
  • ¥15 有没有人懂这个博图程序怎么写,还要跟SFB连接,真的不会,求帮助
  • ¥15 PVE8.2.7无法成功使用a5000的vGPU,什么原因