1041-1045

本文介绍了五个编程题目,涉及序列求和(如交错序列求和及正负数序列求和)、数值最大值寻找以及不及格率计算。通过示例代码解析了如何实现这些功能,包括输入输出格式、条件判断以及数学运算的应用,旨在提升编程基础能力。
摘要由CSDN通过智能技术生成

1041

题目描述

输入一个整数n,输出数列1-1/3+1/5-……前n项的和。

输入

输入只有一个整数n。

输出

结果保留2为小数,单独占一行。

样例输入

3

样例输出

0.87
import java.util.Scanner;
 
public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        double sum = 0;
        double a;
        for (int i = 1; i <= n; i++) {
            a = 2 * i - 1;
            if (i % 2 == 1) {
                sum += (1 / a);
            } else {
                sum -= (1 / a);
            }
        }
        System.out.printf("%.2f%n", sum);
    }
}

1042

题目描述

求1-2/3+3/5-4/7+5/9-6/11+...的前n项和,结果保留3位小数。

输入

输入正整数n(n>0)。

输出

输出一个实数,保留3位小数,单独占一行。

样例输入

5

样例输出

0.917
import java.util.Scanner;
 
public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        double sum = 0;
        double a;
        for (int i = 1; i <= n; i++) {
            a = 2 * i - 1;
            if (i % 2 == 1) {
                sum += (i / a);
            } else {
                sum -= (i / a);
            }
        }
        System.out.printf("%.3f%n", sum);
    }
}

1043

题目描述

输入一个整数n和n个整数,输出这n个整数的最大值。

输入

输入有两行:第一行是一个正整数n,第二行是n个整数。

输出

输出包含一个整数,即n个数中的最大值,单独占一行。

样例输入

4
3 7 5 6

样例输出

7
import java.util.Scanner;
 
public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        int[] arrs = new int[n];
        for (int i = 0; i < arrs.length; i++) {
            arrs[i] = sc.nextInt();
        }
        int max = arrs[0];
        for (int j = 1; j < arrs.length; j++) {
            max = Math.max(max, arrs[j]);
        }
        System.out.println(max);
    }
}

1044

题目描述

输入n和n个学生成绩(实数),输出不及格率。

输入

输入的第一行是一个整数n,第二行是n个实数,用空格隔开。

输出

输出一个实数,表示不及格率,结果保留2位小数,单独占一行。

样例输入

8
98  45 86 79 56 75 90 70

样例输出

0.25

提示

注意,不及格率为0时,输出0.00

import java.util.Scanner;
 
public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
 
        double[] arrs = new double[n];
        for (int i = 0; i < arrs.length; i++) {
            arrs[i] = sc.nextInt();
        }
        double sum = 0;
        for (int j = 0; j < arrs.length; j++) {
            if (arrs[j] < 60) {
                sum++;
            }
        }
        System.out.printf("%.2f%n", sum / n);
    }
}

1045

题目描述

 统计给定的n个数中,负数、零和正数的个数。 

输入

 输入的第一个数是整数n(n<100),表示需要统计的数值的个数,然后是n个整数 

输出

 输出一行a,b和c,分别表示给定的数据中负数、零和正数的个数。 

样例输入

6 0 1 2 3 -1 0

样例输出

1 2 3
import java.util.Scanner;
 
public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        int[] arrs = new int[n];
        for (int i = 0; i < arrs.length; i++) {
            arrs[i] = sc.nextInt();
        }
        int negi = 0;//负数
        int zero = 0;//零
        int posi = 0;//正数
        for (int j = 0; j < arrs.length; j++) {
            if (arrs[j] == 0) {
                zero++;
            } else if (arrs[j] > 0) {
                posi++;
            } else {
                negi++;
            }
        }
        System.out.println(negi + " " + zero + " " + posi);
    }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值