有关测试输入是否是闰年的问题及程序

输入

输入一段字符(正确为数字有可能出现其他字母,符号等非法字符)

输出

提示所输入是否为闰年,如果输入不是数字则提示输入不合法。

闰年的定义

能被4整除但不能被100整除,或者能被400整除的。

测试用例

编号 输入 预计输出
1 400
2 1000
3 10/*0 非法

测试截图:

代码:

import javafx.application.Application;
import javafx.event.ActionEvent;
import javafx.event.EventHandler;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.control.TextField;
import javafx.scene.layout.AnchorPane;
import javafx.scene.text.Text;
import javafx.stage.Stage;

public class Run_nian extends Application {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Run_nian.launch(args);

	}

	@Override
	public void start(Stage stage) throws Exception {
		// TODO Auto-generated method stub
		AnchorPane root = new AnchorPane();
		Text nian = new Text("Year:");
		AnchorPane.setLeftAnchor(nian, 10.0);
		AnchorPane.setTopAnchor(nian, 10.0);
		final TextField field = new TextField();
		AnchorPane.setTopAnchor(field,10.0);
		AnchorPane.setLeftAnchor(field, 50.0);
		Button but = new Button("ok");
		AnchorPane.setTopAnchor(but, 50.0);
		AnchorPane.setLeftAnchor(but, 100.0);
		but.setOnAction(new EventHandler<ActionEvent>(){

			public void handle(ActionEvent event){
				String out = new String("输入不是闰年");

				try{
					int year = Integer.parseInt(field.getText());
					if(year%400==0||(year%4==0&&year%100!=0)){
						out  = "输入是闰年";
					}
				}
				catch(Exception e){
					out = "输入不合法";
				}

				System.out.println(out);
			}
		});
		root.getChildren().addAll(nian,field,but);
		stage.setScene(new Scene(root,250,100));
		stage.show();

	}

}

对于Integer.parseInt(String)的报错问题

若不适用try catch 的异常解决方法,直接使用 Integer.parseInt()会报错,如下

该错误是由于本函数是将字符串参数作为带符号十进制整数来分析。除过第一个字符为 ASCII 字符中减号 ‘-‘ 表示的负数,字符串中的字符都必须是十进制数。

时间: 2024-10-08 20:50:34

有关测试输入是否是闰年的问题及程序的相关文章

c语言判断某一年是否为闰年的各种实现程序代码

本文导语: c语言判断某一年是否为闰年的各种实现程序代码1.公历闰年计算原则(按一回归年365天5小时48分45.5秒)1)普通年能整除4且不能整除100的为闰年.(如2004年就是闰年,1900年不是闰年)2)世纪年能整除400的是闰年.(如2000年是闰年... c语言判断某一年是否为闰年的各种实现程序代码 1.公历闰年计算原则(按一回归年365天5小时48分45.5秒) 1)普通年能整除4且不能整除100的为闰年.(如2004年就是闰年,1900年不是闰年) 2)世纪年能整除400的是闰年

Python unittest 测试输入(input)和输出(print)

Python 自带的 unittest 库可以用来写单元测试. 测试输入输出的解决方法是: 将标准输入输出定向到一个StringIO类(python3是 io.StringIO). import unittest import io import sys def stub_stdin(testcase_inst, inputs): stdin = sys.stdin def cleanup(): sys.stdin = stdin testcase_inst.addCleanup(cleanup

测试输入图片

测试提交一张图片

软件测试——C#判断闰年的form小程序

using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Text;using System.Threading.Tasks;using System.Windows.Forms; namespace SoftwarTest_LeapYear{ public parti

输入任意个数字求和的小程序

设计思想: 先让用户输入需要求和的数字的个数,然后建立对应长度的动态数组,并让其每一项依次相加得结果,最后输出结果. 流程图: 开始! step1:输入需要对多少个数字求和 step2:使用new关键字开辟内存空间,建立动态数组 step3:依次输入每一项 step4:依次对每一项相加求和 step5:输出结果 结束! 1 //package com; 2 3 import java.util.Scanner; 4 5 import javax.swing.plaf.synth.SynthSpi

大开测试:性能-如何实现对Web应用程序服务器资源监控(连载25)

7.25  如何实现对Web应用程序服务器资源监控 1.问题提出 如何实现对Web应用程序服务器资源监控? 2.问题解答 可以使用LoadRunner的Web应用程序服务器资源监控器,在场景或会话步骤运行期间监控Web应用程序服务器,并隔离应用程序服务器性能瓶颈. Web应用程序服务器资源监控器提供了场景或会话步骤执行过程中,有关Ariba.ATG Dynamo.BroadVision.ColdFusion.Fujitsu INTERSTAGE.iPlanet (NAS).Microsoft A

测试心得 --基于微信小图书销售小程序

---恢复内容开始--- 随着上个星期所有的页面以及对应的需求全部完成,我们组便快马加鞭直接进入测试 首先是使用 微信web开发者工具 使用真机测试(终于发现这个工具的好处了),因为是刚刚做完不久,在写页面的时候,每个页面在模拟器上显示的非常的好,然后五个人就非常高兴的认为测试只需要一个小时左右就行,然后刚开始半个小时,心里顿时就哇凉哇凉的,由于我们只在模拟器上面看了效果,一到真机测试的时候就出现了大量的问题:字体大小,图片排版,左滑删除等一系列没有预料到的问题,最有趣的是有些问题是针对不同的手

课堂练习:购买促销书籍问题

题目 书店针对<哈利波特>系列书籍进行促销活动,一共5卷,用编号0.1.2.3.4表示,单独一卷售价8元,具体折扣如下所示: 本数                  折扣 2                       5% 3                       10% 4                       20% 5                       25% 1 根据购买的卷数以及本数,会对应不同折扣规则情况.单数一本书只会对应一个折扣规则,例如购买了两本卷1,

[软件测试学习]考虑到测试的代码编写/int.parse的非法输入—由一个简单的c#闰年检测程序说起

一个简单的C#的闰年检测程序 1.闰年检测的函数编写 当提起检测平年闰年时候,第一反应写出的代码 1 public static bool isLeapYear(int year){ 2 return ((year % 4 == 0 && year % 100 != 0)||(year % 400 == 0)) 3 } 但是这个并不易于测试和出现错后的修改,更改代码如下 1 public static bool isLeapYear(int year){ 2 bool check = ne