第二周java作业--2017.09.06
来源:互联网 发布:广电网络的wifi网址 编辑:程序博客网 时间:2024/06/14 00:16
第一题:摄氏度跟华氏摄氏度的转换问题:
package week2;import java.util.ArrayList;import java.util.List;import java.util.Scanner;import javax.naming.ldap.SortControl;/** * 华氏温度与摄氏温度间的转换问题 * @author Lenovo_PC */public class Test01 { public static void main(String[] args) { // TODO Auto-generated method stub choose(); } private static void choose() { // TODO Auto-generated method stub System.out.println("请选择方式"); System.out.println("1.正序表"); System.out.println("2.倒序表"); System.out.println("3.自定义"); System.out.println("4.退出"); Scanner input = new Scanner(System.in); int number = 0; number = input.nextInt(); switch (number) { case 1: Sort(1); break; case 2: Sort(2); break; case 3: Personal(); break; case 4: System.exit(0); break; default: System.out.println("请输入正确的编号"); break; } } private static void Personal() { // TODO Auto-generated method stub System.out.println("请输入需要转换的度数"); Scanner input = new Scanner(System.in); int number = 0; number = input.nextInt(); float result = 5 / 9.0f * (number - 32); System.out.printf("%.1f\n",result); choose(); } private static void Sort(int i) { // TODO Auto-generated method stub int[] pre = {0,20,40,60,80,100,120,140,160,180,200,220,240,260,280,300}; List<Float> list = new ArrayList<Float>(); float result; for (int j = 0; j < pre.length; j++) { result = 5 / 9.0f * (pre[j] - 32); list.add(result); } if (i==1) { for (int j = 0; j < pre.length; j++) { System.out.printf(pre[j]+"\t"); System.out.printf("%.1f\n",list.get(j)); } }else { for (int j = pre.length-1; j >= 0; j--) { System.out.printf(pre[j]+"\t"); System.out.printf("%.1f\n",list.get(j)); } } choose(); }}
OC:(部分主要代码)
//// ChangeDemo.m// lesson1//// Created by Zb_tjw on 2017/10/8.// Copyright © 2017年 Zb_tjw. All rights reserved.//#import "ChangeDemo.h"@implementation ChangeDemo-(void) choose{ NSLog(@"请选择方式:"); NSLog(@"1.正序表:"); NSLog(@"2.倒序表:"); NSLog(@"3.自定义:"); NSLog(@"4.退出:"); // char *cstring = malloc(sizeof(char) * 2); // scanf("%s", cstring); // NSString *string = [NSString stringWithUTF8String:cstring]; int number = 0; scanf("%d",&number); switch (number) { case 1: [self Sort:1]; break; case 2: [self Sort:2]; break; case 3: [self Personal]; break; case 4: exit(0); break; default: NSLog(@"请输入正确的编号"); break; }}-(void) Sort:(int)i{ // TODO Auto-generated method stub int pre[] = {0,20,40,60,80,100,120,140,160,180,200,220,240,260,280,300}; float after[16]; float result; for (int j = 0; j < 16; j++) { result = 5 / 9.0f * (pre[j] - 32); after[j] = result; } if (i==1) { for (int j = 0; j < 16; j++) { NSLog(@"%d %f",pre[j],after[j]); } }else { for (int j = 15; j >= 0; j--) { NSLog(@"%d %f",pre[j],after[j]); } } [self choose];}-(void) Personal{ // TODO Auto-generated method stub NSLog(@"请输入需要转换的度数"); int number = 0; scanf("%d",&number); float result = 5 / 9.0f * (number - 32); NSLog(@"%.1f\n",result); [self choose];}@end
第二题:找出所有的水仙花数
package week2;import java.util.ArrayList;import java.util.List;/** * 求所有的水仙花数 * @author Lenovo_PC */public class Test02 { public static void main(String[] args){ System.out.println("所有水仙花数:"); int ge,shi,bai; List<Integer> list = new ArrayList<Integer>(); for (int i = 100; i < 1000; i++) { ge = i % 10; shi = i / 10 % 10; bai = i / 100; if (Math.pow(ge, 3)+Math.pow(shi, 3)+Math.pow(bai, 3) == i) { list.add(i); } } for (int i = 0; i < list.size(); i++) { System.out.println(list.get(i)); } }}
OC:(主要就是所找个数不确定,所以不能用数组,用动态内存分配来实现,时隔两年再一次玩动态内存分配又有了点当时做ASM题的感觉啊)
//// Flower.m// changeDemo//// Created by Zb_tjw on 2017/10/10.// Copyright © 2017年 Zb_tjw. All rights reserved.//#import "Flower.h"@implementation Flower- (void)find{ NSLog(@"所有水仙花数:"); int ge,shi,bai; int *result = NULL; result = (int *)malloc(sizeof(int)); int length = 0; for (int i = 100; i < 1000; i++) { ge = i % 10; shi = i / 10 % 10; bai = i / 100; if (ge*ge*ge+shi*shi*shi+bai*bai*bai == i) { result[length] = i; result = (int *)realloc(result, sizeof(int)); length++; } } for (int i = 0; i < length; i++) { NSLog(@"%d", result[i]); }}@end
第三题:求1到20的阶乘的和
package week2;/** * 1到20的阶乘和 * @author Lenovo_PC */public class Test03 { public static void main(String[] args) { // TODO Auto-generated method stub double sum = 0,multiply = 1; for (int i = 1; i <= 20; i++) { for (int j = 1; j <= i; j++) { multiply *= j; } sum += multiply; multiply = 1; } System.out.println("1到20的阶乘和为:"+sum); }}
OC:(部分主要的实现代码)
//// Multiply.m// changeDemo//// Created by Zb_tjw on 2017/10/10.// Copyright © 2017年 Zb_tjw. All rights reserved.//#import "Multiply.h"@implementation Multiply- (void)mutiply{ double sum = 0,multiply = 1; for (int i = 1; i <= 20; i++) { for (int j = 1; j <= i; j++) { multiply *= j; } sum += multiply; multiply = 1; } NSLog(@"1到20的阶乘和为:%e",sum);}@end
阅读全文
0 0
- 第二周java作业--2017.09.06
- Java第二周作业
- 第二周java作业
- 第二周java作业
- java第二周编程作业
- Java作业(第二周)
- 9.13第二周java作业
- 第二周java编程作业
- 算法第二周作业06
- 记录--java进阶--翁凯--第二周作业
- 第二周作业:Java语法基础练习题
- 第二周作业第二题
- 第二周作业
- 第二周作业
- 第二周作业
- 第二周作业
- 第二周作业
- 第二周作业 1
- 七牛云私有空间指定目录大量文件压缩示例
- LeetCode
- 628. Maximum Product of Three Numbers(Java)
- JavaScript简介
- MyBatis的缓存机制
- 第二周java作业--2017.09.06
- 区间dp总结
- 数据对齐问题
- Java中的hashset
- 周辉:《产品研发管理》——学习/消化/吸收
- Mpi与Cuda混合编程(Makefile)
- spring的IOC
- Mac Centos7-Zookeeper 第一天
- pat 乙级 1041. 考试座位号(15)