亲戚计算器网页版源码(亲戚计算器在线计算)
本文目录一览:
- 1、求一个SSH框架的网页版计算器的源码
- 2、html网页计算器代码怎么写?
- 3、亲戚计算器代码,算亲戚称呼的 java
- 4、网页版计算器代码
- 5、亲戚计算器代码 计算亲戚称呼的
- 6、急求一个计算器界面的C语言源代码,只要界面,相当急 啊.........
求一个SSH框架的网页版计算器的源码
网页版计算器 基本不需要对数据库进行操作
所以hibernate框架用不到了
不明白楼主为什么有这样的需求
html网页计算器代码怎么写?
html网页计算器代码编写过程如下:
1.首先我们要做好一个计算器的界面,主要用到html与css的知识,下面是代码
table id="calculater" onClick="calculater()"
tr
td id="display" colspan="5"0/td
/tr
tr
td class="7037-345c-4bd5-98ae numberkey" 1/td
td class="345c-4bd5-98ae-7123 numberkey" 2/td
td class="4bd5-98ae-7123-d065 numberkey" 3/td
td class="98ae-7123-d065-4fb3 numberkey" +/td
td class="7123-d065-4fb3-ab00 numberkey" id="deletesign"c/td
/tr
tr
td class="d065-4fb3-ab00-e283 numberkey" 4/td
td class="4fb3-ab00-e283-287a numberkey" 5/td
td class="ab00-e283-287a-cbe4 numberkey" 6/td
td class="e283-287a-cbe4-b0d8 numberkey" -/td
td rowspan="3" id="equality" onclick="resultscalcaulte()"=/td
/tr
tr
td class="287a-cbe4-b0d8-0eb5 numberkey" 7/td
td class="cbe4-b0d8-0eb5-068e numberkey" 8/td
td class="2405-9ee7-f568-2223 numberkey" 7/td
td class="9ee7-f568-2223-7037 numberkey" */td
/tr
tr
td class="f568-2223-7037-345c numberkey" +/-/td
td class="2223-7037-345c-4bd5 numberkey" 0/td
td class="7037-345c-4bd5-98ae numberkey" ./td
td class="345c-4bd5-98ae-7123 numberkey" //td
/tr
上面设置一个简单的table表格,主要内容是计算器的数字键盘和符号,还有就是class名和ID名,函数名,主要是用作css样式设计和javascript程序设计,后面会用到,就先贴出来了
colspan="5" 是合并五列的意思,表示这个单元格要占五列
rowspan="3"是合并三行的意思,表示这个单元格要占三行
效果如下,这样一个简单的架构就完成了
2.接下来就是css的设计,下面是代码
*{
padding:0;
margin:1px;
}
#calculater{
margin: auto;
margin-top: 30px;
border: solid 6px #2371D3;
border-spacing: 0px;
}
#display{
width: 100%;
height: 30px;
border-bottom: solid 4px #2371D3;
font-weight: bold;
color: #193D83;
font-family: 黑体;
padding-left: 2px;
}
.numberkey{
cursor: pointer;
width: 40px;
height: 30px;
border: solid 1px #FFFFFF;
background: #2371D3;
color: #ffffff;
text-align: center;
font-weight: bold;
font-family: 黑体;
}
#equality{
cursor: pointer;
width: 40px;
height: 100%;
background: #2371D3;
border: solid 1px #FFFFFF;
color: #ffffff;
text-align: center;
font-weight: bold;
font-family: 黑体;
}
.numberkey:hover{
background: #EA6F30;
}
#equality:hover{
background: #EA6F30;
}
以上是css代码,比较简单
border-spacing: 0px;
这里代码的意义是:table中单元格与单元格,表格边缘都有默认距离,这里border-spacing: 0px;能使其默认距离为零,没有这句会比较难设计好看的样式。
cursor: pointer;
这里代码的意义是:使鼠标放在上面时变成一个手的标志
效果如下
3.接下来是javascript的代码,按照思路来一点点写
首先我们要设计,当鼠标点击某个单元格时我们能获取这个单元格上的内容,即数字或符号
所以我们在table标签里加上onClick="calculater()",添加一个点击事件
然后用event.srcElement.innerText获取单元格上的内容,event是事件的意思,在这里这个事件当然是点击了,srcElement就是事件的元素,在这里是被点击的单元格,innerText是获取这个单元格的内容。
这里我们就可以写出这个函数第一行代码,获取被点击的单元格的内容
function calculater(){
results=event.srcElement.innerText;
}
results就是单元格的内容
4.当然获取了什么要显示在第一个单元格那里,这里我们还是用innerText,来输出这个点击的值
display.innerText=results;
这里代码的意义是:display是第一格单元格的id,就是在第一行显示你点击了什么
calculater()的代码就变成这样
function calculater(){
results=event.srcElement.innerText;
display.innerText=results;
}
这样我们就能输出我们点击的单元格内容
5.但这样我们只能输出一次单击的内容,为了把内容串起来,我们把代码改为
var results="";
function calculater(){
results+=event.srcElement.innerText;
display.innerText=results;
}
设置results为全局变量,event.srcElement.innerText用+=累加进results,
这样我们就能输入并显示一条算式
6.我们在“=”单元格标签里加上onClick="resultscalcaulte()",计算这个结果
function resultscalcaulte(){
calresults=eval(results);
display.innerText=calresults;
}
eval();能运行括号里的javascript语句的字符串,并返回其值,如果results等于7+8,那eval就会计算7+8,并返回56,然后后面一条代码把56显示出来
7.加入上面的运算后,还是无法显示结果,原因是点击“=”单元格会先触发resultscalcaulte()函数,再触发calculater()函数,所以我们在resultscalcaulte()得到的结果就被calculater()的结果覆盖了,我们需要再在calculater()里加上
if (event.srcElement.innerText=="=") {
return;
}
使点击“=”单元格触发的calculater()函数得不到任何结果
最后得到最简单的计算器运算代码
var results="";
var calresults="";
function calculater(){
if (event.srcElement.innerText=="=") {
return;
}
results+=event.srcElement.innerText;
display.innerText=results;
}
function resultscalcaulte(){
calresults=eval(results);
display.innerText=calresults;
}
8.下面是计算7*8的结果
亲戚计算器代码,算亲戚称呼的 java
亲亲戚计算器网页版源码,自己去找吧亲戚计算器网页版源码,app名字叫亲戚计算器网页版源码:三姑六婆
希望能帮到亲戚计算器网页版源码你亲戚计算器网页版源码,还请采纳哦
网页版计算器代码
html
head
titleJS版计算器/title
link rel="stylesheet" type="text/css" href=""
meta http-equiv="content-type" content="text/html;charset=utf-8"
!--js代码可以放置在任意位置,按照先后顺序依次执行 一般放在head标签之间--
script type="text/javascript"
/* 定义一个Calculator类*/
function Calculator(){
this.jisuan=function(num1,num2,oper){
var res=0;
switch(oper){
case "+":
res=num1+num2;
break;
case "-":
res=num1-num2;
break;
case "*":
res=num1*num2;
break;
case "/":
res=num1/num2;
break;
}
return res;
}
}
//创建对象
var calculator=new Calculator();
/*定义全局变量*/
var val=0; //放置输入的值
var xval=0;//保存转换Number类型的值
var temp=0; //保存第一次输入的值
var oper="";//保存输入的操作符
/*获取输入数字*/
function inputEvent(e){
val=e.value
var xsval=document.getElementById("inp1");
xsval.value+=val; //连续输入数字(String类型)
//转换Number类型
xval=parseFloat(xsval.value);
}
/*获取第一行的数据*/
function inputPCB(e){
//window.alert(e.value);
var xsval=document.getElementById("inp1");
if(e.value=="Clear"){
xsval.value="";
}else if(e.value=="Back"){
/*这个功能还没有实现,有兴趣的朋友可以自己做一做*/
}else if(e.value=="POWER"){
//计算平方
xsval.value=Math.pow(xsval.value,2);
}
}
/*输入操作符*/
function inputOper(e){
oper=e.value;
//window.alert(typeof oper);
//oper=oper.substr(0);
if (e.value=="+"){
var xsval=document.getElementById("inp1");
//保存上次计算结果,并对字符串进行转换Number类型
temp=parseFloat(xsval.value);
//第一次输入的值设置为空
xsval.value="";
}else if(e.value=="-"){
var xsval=document.getElementById("inp1");
temp=parseFloat(xsval.value);
xsval.value="";
}else if(e.value=="*"){
var xsval=document.getElementById("inp1");
temp=parseFloat(xsval.value);
xsval.value="";
}else if(e.value=="/"){
var xsval=document.getElementById("inp1");
temp=parseFloat(xsval.value);
xsval.value="";
}
}
/*计算结果*/
function inputEquel(e){
var xsval=document.getElementById("inp1");
if(e.value=="="){
//window.alert(xval);
//调用对象方法
xsval.value=calculator.jisuan(temp,xval,oper);
}
}
/script
!--css 样式--
style
input{
width:60px;
}
#inp1{
width:280px;
text-align:right;
}
/style
/head
body
table border="1"
!--显示结果行--
trtd colspan="4"input id="inp1" type="text" value="" name="xianshi"//td/tr
!--第一行--
trtdinput type="button" value="POWER" onclick="inputPCB(this)"//tdtdinput type="button" value="Clear" onclick="inputPCB(this)"//tdtdinput type="button" value="Back"onclick="inputPCB(this)"//tdtd/td/tr
!--第二行--
trtdinput type="button" value="1" onclick="inputEvent(this)"//tdtdinput type="button" value="2" onclick="inputEvent(this)"//tdtdinput type="button"value="3" onclick="inputEvent(this)"//tdtdinput type="button" value="4" onclick="inputEvent(this)"//td/tr
!--第三行--
trtdinput type="button" value="5" onclick="inputEvent(this)"//tdtdinput type="button" value="6" onclick="inputEvent(this)"//tdtdinput type="button"value="7" onclick="inputEvent(this)"//tdtdinput type="button" value="8" onclick="inputEvent(this)"//td/tr
!--第四行--
trtdinput type="button" value="9" onclick="inputEvent(this)"//tdtdinput type="button" value="0" onclick="inputEvent(this)"//tdtdinput type="button"value="." onclick="inputEvent(this)"//tdtdinput type="button" value="=" onclick="inputEquel(this)"//td/tr
!--第五行--
trtdinput type="button" value="+" onclick="inputOper(this)"//tdtdinput type="button" value="-" onclick="inputOper(this)"//tdtdinput type="button"value="*" onclick="inputOper(this)"//tdtdinput type="button" value="/" onclick="inputOper(this)"//td/tr
/table
/body
/html
亲戚计算器代码 计算亲戚称呼的
import java.awt.BorderLayout;
import java.awt.Dimension;
import java.awt.GridLayout;
import java.awt.Toolkit;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.SwingUtilities;
import javax.swing.UIManager;
class CalculatorPanel extends JPanel {
private JPanel jp; // 中间的面板
private double result; // 计算结果
private boolean start; // 用于判断是否是首次输入,true首次,false不是首次
private boolean flag; // 用于判断是否清空显示区域的值,true需要,false不需要
private String lastCommand; // 用于保存运算符
JButton display; // 显示区域
public CalculatorPanel() {
// 初始化各项值
result = 0;
start = true;
flag = false;
lastCommand = "=";
// 设置CalculatorPanel这个面板的布局为框架布局
setLayout(new BorderLayout());
// 这个按钮用来显示值的区域
display = new JButton("0.0");
display.setEnabled(false);// 按钮样式设置为禁用样式
// 用来初始化,清除用的
JButton clear = new JButton("clear");
clear.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
// 作初始化的操作
result = 0;
start = true;
flag = false;
lastCommand = "=";
display.setText("0.0");
}
});
jp = new JPanel();
// 将此面板布局设置为网格布局,4行4列
jp.setLayout(new GridLayout(4, 4));
// 实例化监听器对象
NumberAction na = new NumberAction();
CommandAction ca = new CommandAction();
makeButton("7", na);
makeButton("8", na);
makeButton("9", na);
makeButton("/", ca);
makeButton("4", na);
makeButton("5", na);
makeButton("6", na);
makeButton("*", ca);
makeButton("1", na);
makeButton("2", na);
makeButton("3", na);
makeButton("-", ca);
makeButton("0", na);
makeButton(".", na);
makeButton("+", ca);
makeButton("=", ca);
// 将面板,两个按键加入到我的面板,实现计算器的界面
add(display, BorderLayout.NORTH);
add(jp, BorderLayout.CENTER);
add(clear, BorderLayout.SOUTH);
}
private void makeButton(String buttonName, ActionListener al) {
JButton jb = new JButton(buttonName);
jp.add(jb);
jb.addActionListener(al);
}
// 数字监听器
private class NumberAction implements ActionListener {
@Override
public void actionPerformed(ActionEvent e) {
JButton jb = (JButton) e.getSource(); // 获取事件源对象
String input = jb.getText(); // 获取事件源对象上的标签
if (start) { // 首次输入
// 一上就".",就什么也不做
if (input.equals(".")) {
return;
}
// 如果是"0.0"的话,就清空
if (display.getText().equals("0.0")) {
display.setText("");
}
start = false;// 改变是否首次输入的标记值
} else {
// 判断显示区域的值里面是否已经有".",如果有,输入的又是".",就什么都不做
if (display.getText().indexOf(".") != -1) {
if (input.equals(".")) {
return;
}
}
// 判断显示区域的值里面只有"-",输入的又是".",就什么都不做
if (display.getText().equals("-")) {
if (input.equals(".")) {
return;
}
}
// 判断显示区域的值如果是"0",输入的不是".",就什么也不做
if (display.getText().equals("0")) {
if (!input.equals(".")) {
return;
}
}
}
// 如果我点击了运算符以后,再输入数字的话,就要清空显示区域的值
if (flag) {
display.setText("");
flag = false;// 还原初始值,不需要清空
}
display.setText(display.getText() + input);// 设置显示区域的值
}
}
// 运算符监听器
private class CommandAction implements ActionListener {
@Override
public void actionPerformed(ActionEvent e) {
JButton jb = (JButton) e.getSource(); // 获取事件源对象
String inputCommand = jb.getText(); // 获取事件源对象上的标签
if (start) {// 首次输入
// 一上就是"-"
if (inputCommand.equals("-")) {
display.setText("-");// 显示区域的内容设置为"-"
start = false;// 改变首次输入的标记
}
} else {
if (!flag) {// 如果flag=false不需要清空显示区的值,就调用方法计算
calculate(Double.parseDouble(display.getText()));// 保存显示区域的值,并计算
}
// 保存你点击的运算符
lastCommand = inputCommand;
flag = true;// 因为我这里已经输入过运算符,
}
}
}
// 计算用的方法
private void calculate(double x) {
if (lastCommand.equals("+")) {
result += x;
} else if (lastCommand.equals("-")) {
result -= x;
} else if (lastCommand.equals("*")) {
result *= x;
} else if (lastCommand.equals("/")) {
result /= x;
} else if (lastCommand.equals("=")) {
result = x;
}
display.setText("" + result);
}
}
class MyFrameUitl {
public static void init(JFrame jFrame, Dimension frameSize, String title,
String iconFileName, boolean resizable) {
Toolkit tk = Toolkit.getDefaultToolkit(); // 系统工具包,可以读取系统信息
Dimension screenSize = tk.getScreenSize();// 获取屏幕大小
// 获取宽高
int screenWidth = screenSize.width;
int screenHeight = screenSize.height;
// 找中心点
int centerX = screenWidth / 2;
int centerY = screenHeight / 2;
// 解析窗体大小
int frameWidth = frameSize.width;
int frameHeight = frameSize.height;
// 设置窗体位置
jFrame.setBounds(centerX - frameWidth / 2, centerY - frameHeight / 2,
frameWidth, frameHeight);
jFrame.setTitle(title);// 设置标题
if (iconFileName != null) {
jFrame.setIconImage(tk.getImage(iconFileName));// 设置图标
}
// 设置皮肤com.sun.java.swing.plaf.windows.WindowsLookAndFeel
/**/
try {
UIManager.setLookAndFeel("com.sun.java.swing.plaf.windows.WindowsLookAndFeel");
SwingUtilities.updateComponentTreeUI(jFrame);
} catch (Exception e1) {
e1.printStackTrace();
}
jFrame.setResizable(resizable);// 设置窗体是否可以改变大小
jFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); // 设置程序关闭动作
jFrame.setVisible(true);// 显示窗体
}
}
class CalculatorFrame extends JFrame {
public CalculatorFrame() {
add(new CalculatorPanel());
MyFrameUitl.init(this, new Dimension(400, 300), "简易计算器", null,
false);
this.pack();// 让组件按原始大小显示,并且窗体的大小刚好能够容纳所有的组件
}
}
public class CalculatorTest {
public static void main(String[] args) {
new CalculatorFrame();
}
}
急求一个计算器界面的C语言源代码,只要界面,相当急 啊.........
#includestdio.h
#includestdlib.h
#includemath.h
void add(float a,float b);
void sub(float a,float b);
void mul(float a,float b);
void dv(float a,float b);
void p(float a,float b);
void main()
{ float a,b,m;
char ch;
while(1)
{printf("input first number:");
scanf("%f",a);
getchar();
printf("input char:");
scanf("%c",ch);
switch(ch)
{ case '+':printf("input second number:");scanf("%f",b);add(a,b);break;
case '-':printf("input second number:");scanf("%f",b);sub(a,b);break;
case '*':printf("input second number:");scanf("%f",b);mul(a,b);break;
case '/':printf("input second number:");scanf("%f",b);
{if(b==0)
{printf("Divided by zero.\n");break;}
else
{dv(a,b);break;}
}
case 's':m=sqrt(a);printf("result=%f\n",m);break;
case 'x':m=1.0/a;printf("result=%f\n",m);break;
case 'c':a=0;break;
case 'p':printf("input second number:");scanf("%f",b);p(a,b);break;
case 'q':printf("User exit.\n");
return;
default:printf("illegal operator.\n");
}
}
}
void add(float a,float b)
{ float m=0,n;
char ch;
m=a+b;
printf("result=%f\n",m);
getchar();
while(1)
{printf("input char:");
scanf("%c",ch);
switch(ch)
{ case '+':printf("input second number:");scanf("%f",n);add(m,n);break;
case '-':printf("input second number:");scanf("%f",n);sub(m,n);break;
case '*':printf("input second number:");scanf("%f",n);mul(m,n);break;
case '/':printf("input second number:");scanf("%f",n);
{if(n==0)
{printf("Divided by zero.\n");break;}
else
{dv(m,n);break;}
}
case 's':m=sqrt(m);printf("result=%f\n",m);break;
case 'x':m=1.0/m;printf("result=%f\n",m);break;
case 'p':printf("input second number:");scanf("%f",n);p(m,n);break;
case 'c':printf("User return.\n");
return;
case 'q':exit(0);
default:printf("illegal operator.\n");
}
}
}
void sub(float a,float b)
{ float m=0,n;
char ch;
m=a-b;
printf("result=%f\n",m);
getchar();
while(1)
{printf("input char:");
scanf("%c",ch);
switch(ch)
{ case '+':printf("input second number:");scanf("%f",n);add(m,n);break;
case '-':printf("input second number:");scanf("%f",n);sub(m,n);break;
case '*':printf("input second number:");scanf("%f",n);mul(m,n);break;
case '/':printf("input second number:");scanf("%f",n);
{if(n==0)
{printf("Divided by zero.\n");break;}
else
{dv(m,n);break;}
}
case 's':m=sqrt(m);printf("result=%f\n",m);break;
case 'x':m=1.0/m;printf("result=%f\n",m);break;
case 'p':printf("input second number:");scanf("%f",n);p(m,n);break;
case 'c':printf("User return.\n");
return;
case 'q':exit(0);
default:printf("illegal operator.\n");
}
}
}
void mul(float a,float b)
{ float m=0,n;
char ch;
m=a*b;
printf("result=%f\n",m);
getchar();
while(1)
{printf("input char:");
scanf("%c",ch);
switch(ch)
{ case '+':printf("input second number:");scanf("%f",n);add(m,n);break;
case '-':printf("input second number:");scanf("%f",n);sub(m,n);break;
case '*':printf("input second number:");scanf("%f",n);mul(m,n);break;
case '/':printf("input second number:");scanf("%f",n);
{if(n==0)
{printf("Divided by zero.\n");break;}
else
{dv(m,n);break;}
}
case 's':m=sqrt(m);printf("result=%f\n",m);break;
case 'x':m=1.0/m;printf("result=%f\n",m);break;
case 'p':printf("input second number:");scanf("%f",n);p(m,n);break;
case 'c':printf("User return.\n");
return;
case 'q':exit(0);
default:printf("illegal operator.\n");
}
}
}
void dv(float a,float b)
{ float m=0,n;
char ch;
m=a/b;
printf("result=%f\n",m);
getchar();
while(1)
{printf("input char:");
scanf("%c",ch);
switch(ch)
{ case '+':printf("input second number:");scanf("%f",n);add(m,n);break;
case '-':printf("input second number:");scanf("%f",n);sub(m,n);break;
case '*':printf("input second number:");scanf("%f",n);mul(m,n);break;
case '/':printf("input second number:");scanf("%f",n);
{if(n==0)
{printf("Divided by zero.\n");break;}
else
{dv(m,n);break;}
}
case 's':m=sqrt(m);printf("result=%f\n",m);break;
case 'x':m=1.0/m;printf("result=%f\n",m);break;
case 'p':printf("input second number:");scanf("%f",n);p(m,n);break;
case 'c':printf("User return.\n");
return;
case 'q':exit(0);
default:printf("illegal operator.\n");
}
}
}
void p(float a,float b)
{ float m=1,n;
int i;
char ch;
for(i=1;i=b;i++)
{m=m*a;
}
printf("result=%f\n",m);
getchar();
while(1)
{printf("input char:");
scanf("%c",ch);
switch(ch)
{ case '+':printf("input second number:");scanf("%f",n);add(m,n);break;
case '-':printf("input second number:");scanf("%f",n);sub(m,n);break;
case '*':printf("input second number:");scanf("%f",n);mul(m,n);break;
case '/':printf("input second number:");scanf("%f",n);
{if(n==0)
{printf("Divided by zero.\n");break;}
else
{dv(m,n);break;}
}
case 's':m=sqrt(m);printf("result=%f\n",m);break;
case 'x':m=1.0/m;printf("result=%f\n",m);break;
case 'p':printf("input second number:");scanf("%f",n);p(m,n);break;
case 'c':printf("User return.\n");
return;
case 'q':exit(0);
default:printf("illegal operator.\n");
}
}
}
老师修改过的,很准确