1. 用java制作一个程序员计算器和win7系统自带的一样的代码,谢谢
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class Calculator3 extends JFrame implements ActionListener {
private boolean dotExist, operated, equaled; // 帮助运算的布尔变量
private double storedNumber; // 目前的结果
private char lastOperator; // 表示上一运算符
private JTextField operation; // 结果栏
private JButton dot, plus, minus, multi, div, sqrt, equal, changePN, clear; // 运算符
private JButton[] numbers; // 数字
// 构造者
public Calculator3() {
setTitle("Calculator");
// 初始化变量
dotExist = false; // 表示当前的数是否有小数点
operated = false; // 表示任意运算符是否被按下
equaled = false; // 表示等号是否被按下
storedNumber = 0;
lastOperator = '?';
// 初始化窗口变量
operation = new JTextField("0");
operation.setEditable(false);
numbers = new JButton[10];
for (int i = 0; i < 10; i++)
numbers[i] = new JButton("" + i);
dot = new JButton(".");
plus = new JButton("+");
minus = new JButton("-");
multi = new JButton("*");
div = new JButton("/");
sqrt = new JButton("√");
equal = new JButton("=");
changePN = new JButton("±");
clear = new JButton("AC");
// 将窗口物体放入窗口
GridBagLayout layout = new GridBagLayout();
getContentPane().setLayout(layout);
addComponent(layout, operation, 0, 0, 4, 1);
addComponent(layout, numbers[1], 1, 0, 1, 1);
addComponent(layout, numbers[2], 1, 1, 1, 1);
addComponent(layout, numbers[3], 1, 2, 1, 1);
addComponent(layout, numbers[4], 2, 0, 1, 1);
addComponent(layout, numbers[5], 2, 1, 1, 1);
addComponent(layout, numbers[6], 2, 2, 1, 1);
addComponent(layout, numbers[7], 3, 0, 1, 1);
addComponent(layout, numbers[8], 3, 1, 1, 1);
addComponent(layout, numbers[9], 3, 2, 1, 1);
addComponent(layout, dot, 4, 0, 1, 1);
addComponent(layout, numbers[0], 4, 1, 1, 1);
addComponent(layout, sqrt, 4, 2, 1, 1);
addComponent(layout, plus, 1, 3, 1, 1);
addComponent(layout, minus, 2, 3, 1, 1);
addComponent(layout, multi, 3, 3, 1, 1);
addComponent(layout, div, 4, 3, 1, 1);
addComponent(layout, equal, 5, 0, 2, 1);
addComponent(layout, changePN, 5, 2, 1, 1);
addComponent(layout, clear, 5, 3, 1, 1);
}
// 对按钮进行反应的方法
public void actionPerformed(ActionEvent e) {
JButton btn = (JButton) e.getSource();
if (btn == clear) {
operation.setText("0");
dotExist = false;
storedNumber = 0;
lastOperator = '?';
} else if (btn == equal) {
operate('=');
equaled = true;
} else if (btn == plus) {
operate('+');
equaled = false;
} else if (btn == minus) {
operate('-');
equaled = false;
} else if (btn == multi) {
operate('*');
equaled = false;
} else if (btn == div) {
operate('/');
equaled = false;
} else if (btn == changePN) {
operate('p');
operate('=');
equaled = true;
} else if (btn == sqrt) {
operate('s');
operate('=');
equaled = true;
} else {
if (equaled)
storedNumber = 0;
for (int i = 0; i < 10; i++)
if (btn == numbers[i]) {
if (operation.getText().equals("0"))
operation.setText("" + i);
else if (!operated)
operation.setText(operation.getText() + i);
else {
operation.setText("" + i);
operated = false;
}
}
if (btn == dot && !dotExist) {
operation.setText(operation.getText() + ".");
dotExist = true;
}
}
}
// 进行运算的方法
private void operate(char operator) {
double currentNumber = Double.valueOf(operation.getText())
.doubleValue();
if (lastOperator == '?')
storedNumber = currentNumber;
else if (lastOperator == '+')
storedNumber += currentNumber;
else if (lastOperator == '-')
storedNumber -= currentNumber;
else if (lastOperator == '*')
storedNumber *= currentNumber;
else if (lastOperator == '/')
storedNumber /= currentNumber;
else if (lastOperator == 'p')
storedNumber *= -1;
else if (lastOperator == 's')
storedNumber = Math.sqrt(currentNumber);
else if (lastOperator == '=' && equaled)
storedNumber = currentNumber;
operation.setText("" + storedNumber);
operated = true;
lastOperator = operator;
}
// 快捷使用GridBagLayout的方法
private void addComponent(GridBagLayout layout, Component component,
int row, int col, int width, int height) {
GridBagConstraints constraints = new GridBagConstraints();
constraints.fill = GridBagConstraints.BOTH;
constraints.insets = new Insets(10, 2, 10, 2);
constraints.weightx = 100;
constraints.weighty = 100;
constraints.gridx = col;
constraints.gridy = row;
constraints.gridwidth = width;
constraints.gridheight = height;
layout.setConstraints(component, constraints);
if (component instanceof JButton)
((JButton) component).addActionListener(this);
getContentPane().add(component);
}
// 主方法初始化并显示窗口
public static void main(String[] args) {
Calculator3 calc = new Calculator3();
calc.setSize(290, 400);
calc.setVisible(true);
}
}
2. win7自带计算器切换到“程序员”模式时为什么无法进行计算
计算器想必大家都用过,不过大多停留在简单的加减乘除上,不过对于那些经常要和数字打交道的同学们肯定不仅仅限于此,例如三角函数、求和等计算肯定会经常用到,对于这类计算往往有专业的计算器支持,不过价格不菲,也就让很多人望而却步。
其实这类专业的计算器一直就在我们的身边,在我们的眼前,就是正版Win7中自带的计算器。而下面我们就来介绍一下Win7自带计算器的功能。
首先在附件中我们可以找打“计算器”程序,打开后发现,Win7自带的计算器与之前的版本相比还是有些差别的,精致的视觉效果,显得更为简洁大方。
外观的变化只是Win7计算器中最简单的一面,而更深层的变化在于其除了有“标准型”和“科学型”两种计算模式之外,还有“程序员”、“统计信息”等模式,而且值得一提的是,Win7自带的计算器还具有日期计算、单位转换、工作表等多种实用计算工具。
那么如何切换我们想要的计算模式呢?一种方法是直接从“查看”菜单中选择,另外,我们还可以通过快捷方式“Alt+数字1/2/3/4”来更快速的切换,非常方便。
科学计算器
在科学模式下使用计算器,可以精确到32位数,并可使用运算符来控制优先级,另外,对于数学函数的功能大致可以分为三类;
三角函数:主要包含了正弦、余弦等快速计算,另外,按INV功能键后,还可以计算其反函数等。
代数函数:这里可以计算我们高中时学过的幂函数、对数函数、指数函数等。
其他:其余的函数则相对用的比较少一些,比如取整(Int)、圆周率等。
注意事项:
对于需要一个输入值的函数值时,一般先要输入参数,再按相应的函数进行计算,而对于有两个参数需要输入的情况,则一般先输入第一个参数,按函数之后再输入第二个参数之后,按=获得记过。
程序员计算器
在这个模式下,结果可以精确到64位,不过需要注意的是,该模式下仅支持整数模式,小数则被舍弃。而进制在这里也可以自由更改,而且每一个数字都会在下方用二进制来表示,十分贴心。
工作表计算器
相信有一些用户日常还会用到汽车租金、油耗等方面的问题,Win7自带的计算器都能解决,只要切换到工作表模式,然后选择自己需要的工作表,就可以相应的计算了。
这里我们以油耗计算为例,选择油耗工作表后(记得选择公里为单位的模式),只需要输入相应的公里数和已经使用的燃料,就可以快速的算出每百公里需要的油耗了。
这里简单介绍了下Win7自带计算器的使用方法,虽然仅仅是一个小小的计算器,也让Win7增色不少,同时为大家带来了更为全面、人性化的使用效果。
3. win10 程序员 计算器 怎么用
方法/步骤打开计算器:
打开计算器有很多种方法,这里只演示最简单的方式。在图中箭头所指出直接输入“计算器”或拼音“jsq”或英文缩写“calc”,系统里面给给你查找这个应用,并且显示在窗口的最上方。点击“计算器”即可打开。
切换计算器模式:
计算器包含了三种模式,分别是:标准、科学、程序员。默认是标准模式,最简单也最常用,如果你需要进行科学运算可以使用科学型,如果你是程序员可以是用程序员模式。
点击左侧 三个横线的图标,会出现模式选择界面,点击相应的名称就切换到对应的模式。比如点一下“科学” 界面就变成科学模式了。
标准模式的使用:
标准模式一般是用来计算加、减、乘、除的。
第二排图标分别表示 求百分比,求根号,求评分,求倒数,使用方法都是先按一个数字,然后按对应的图标。比如 :2%10=20 2 1/X=0.5 。
第一排的图标很多人比较陌生,下面详解下MC:清除存储的数据MR:读取存储的数据MS:将所显示的数存入存储器中,存储器中原有的数据被覆盖M+:将输入的数加上存储器中的数,所得结果存入存储器M-:将存储器中的数减去输入的数,所得结果存入存储器
CE:在数字输入期间按下此键,将清除输入寄存器中的值并显示"0",可重新输入C:清除全部数据结果和运算符
举个例子,用计算器算出2*3+4*5的结果。按2*3=,显示6,按MS将数据结果6存入存储器。再按4*5=,显示20,按M+将数据结果20加上存储器中的数值6,再按MR,得到结果26
科学模式的使用:
复杂的数学运算需要用到这个模式,这是标准模式的扩展,主要是添加了一些比较常用的数学函数,我觉得可以分为三组:
三角函数:正弦,余弦,正切 等函数的运算
代数函数:高中代数里学过的幂函数(x2, x3, x1/3, xy, x1/y),对数函数(In, log),阶乘(n!),指数函数(10x)
其他:这里有些函数在编程的时候用的会比较多,比如取整(Int),圆周率(Pi),取模(Mod),以及其他一些表示函数如度分秒表示(dms),科学计数法表示(F-E),和科学计数法输入(Exp)
举例求:5的2次方,如图。
有两个变量的算法一般是先按一个数字,然后再按运算符号,最后输入一个数字,比如 x的y次方
一个变量的算法是输入一个数字,然后按运算符结束,比如根号
还有获取常量的,直接点一下运算符就可以了,比如 π
程序员模式的使用:
这种模式主要是为程序员设计的,里面主要包括进制转换和逻辑运算。
进制转换,比如把十进制的16转换成二进制的16。
按键:(DEC)下输入(16),切换到(BIN) 得到结果(10000)。
win10的进制转换比较人性化,你只要输入一个数字,里面会显示所有进制的值。
逻辑运算: 比如 1 or 0 =1 1 and 0 =0 。
逻辑运算一般都是针对二进制的处理。
单位换算的使用:
个人觉得这个功能超级实用,win10计算器重总共有12单位换算。
1、体积:立方毫米、立方厘米、立方米、升、小勺、大勺、夸脱、加仑……
2、长度:纳米、微米、毫米、厘米、米、千米、英寸、英尺……
3、重量:克、十克、百克、千克、公吨、盎司、磅、英石……
4、温度:摄氏度、华氏度、开尔文温标……
5、能量:焦耳、电子伏特、千焦、卡路里、大卡、尺磅、英制热量单位……
6、面积:平方毫米、平方厘米、平方米、平方千米、公顷、平方英寸、平方英尺……
7、速率:厘米每秒、米每秒、千米每秒、英尺每秒、英里每秒、节数、马赫数……
8、时间:微秒、毫秒、秒、分钟、小时、天、周、年……
9、功率:瓦特、千瓦、马力、尺磅、BTU每秒……
10、数据:KB(千字节)、MB、GB、TB……
11、压力:帕斯卡、磅每平方英寸(PSI)、巴、大气压力(毫米汞柱)……
12、角度:角度、弧度……
4. 有谁可以教教我怎么用程序员计算器吗
楼上两位已得出部分解。本题若是只限定为整数的相加是无解的。因为三个奇数相加之和必为奇数,不可能等于30。以下是iOS上的nano basic验证程序:
a()=1,3,5,7,9,11,13,15,17,19
for i=1 to 8
for j=1 to 8
for k=1 to 8
if a(i)+a(j)+a(k)=30 then
print a(i);a(j);a(k)
endif
next i
next j
next k
end
5. windows计算机的附件计算器(程序员计算器)怎么用那四字,两字,字什么意思
一字 代表 两个字节
一个内存单元是8个bit,一个字节。
那么两字就是四个字节,四字就是八个字节
6. windows系统中的计算器怎么设置为程序员模式
不知道验友有没有研究过windows自带的计算器,反正小编研究之后发现,windows自然的计算器确实很强大,之前都忽视了。现在,跟着懒蛇来看一下,windows自带计算器的一些高级用法。 如何快速打开计算器? 1、win + R 组合键,打开运行对话框 2、输入calc,敲回车执行 3、打开windows自带的标准型计算器。 注意,如果第一次打开,默认打开标准型计算机。如果上次打开程序员类型计算器,下次打开还是程序员类型。 计算器的几种工作模式 1、标准型 2、科学型 3、程序员型 4、统计信息型 如何在上述几种类型间切换? 1、点击计算器左上角的查看菜单,下拉菜单选择工作类型。 2、Alt + 1/2/3/4,快速切换。 计算器的高级用法? 1、进制转换 打开程序员型计算器,可以看到进制转换菜单。其中包括,十进制、八进制、16进制、2进制。而且可以设置字节。 2、单位换算 查看菜单,选中单位转换,快捷键Ctrl+U。可以进行常见的单位换算,很方便。 3、日期计算 查看菜单,选中日期计算,快捷键Ctrl+E。可以快速计算两个日期的间隔天数。比如,我们知道了12306的抢票时间,可以通过这个程序,快速的知道还有多少天可以抢票。 4、抵押、汽车租赁、油耗计算 通过设置计算器,还可以进行上述运算。 5、复制和粘贴 计算器支持复制和粘贴功能,点击编辑菜单,即可进行复制粘贴操作。对于文档中的算式,可以直接复制进计算器进行运算,比如说, 1+2*3+4*5
7. 程序员计算器怎么打小数点
摘要 在打开的计算机页面中,点开左上角的查看选项,此时弹出好几个其他选项。选择程序员选项,或者直接按(alt+3)进入程序员界面。当然,想进行比较高级的计算时,可以打开科学计算器的页面
8. win7自带的那个计算器里的程序猿那个.说下它的那些英文都是干啥的吧.
And, Or, Not, Xor: 最基本的与或非和异或操作,不作解释。
Lsh, Rsh:全称是Left Shift和Right Shift,也就是左移和右移操作,你需要输入你要移动的位数(不能大于最大位数)
RoL, RoR:全称是Rotate Left和Rotate Right,对于RoL来讲,就是向左移动一位,并将移出的那位补到最右边那位上,RoR类似
程序员里是二进制运算,在计算机里用0和1在表示小数,具体查资料
不一定正确的,它在四舍五入
比如,你输入3. * 4 ,它会得出16
紧接着,16再除4 = 3.
这个也不能叫错吧,它 在存储结果时会比显示在显示框中的结果多出若干位(具体多少位,这个真没研究过),所以会出现数据可以还原的情况
9. 电脑里科学计算器和程序员的区别是什么
科学计算器和市面上卖的科学计算器一样的功能,可以计算幂、三角函数、根号,对数等,支持多项式,支持小数;
程序员计算器是辅助编程使用的,最主要的功能是2/8/10/16进制之间的转换,以及与或非模等操作,只支持整型,不支持浮点数。
10. win7自带计算器中的程序员里小数点那个符号是暗的,那我怎么进行进制之间的转化
win7自带计算器中的程序员里小数点那个符号是暗的,不能进行进制之间的转化是设置错误造成的,解决方法为:
1、找到电脑左下角的一个四色的开始图标点开。