用JAVA编写的科学计算器源代码
以下是一个简单的用Java编写的科学计算器的源代码示例:
java
import java.util.Scanner;
public class ScientificCalculator {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("Welcome to the Scientific Calculator!");
System.out.println("Enter 'add', 'subtract', 'multiply', 'divide', 'sin', 'cos', 'tan', 'log', 'exp', 'sqrt', or 'quit' to exit.");
while (true) {
System.out.print("Enter operation (e.g., add 2 3): ");
String operation = scanner.nextLine();
if (operation.equalsIgnoreCase("quit")) {
break;
}
String[] parts = operation.split(" ");
double num1 = Double.parseDouble(parts[1]);
double num2 = Double.parseDouble(parts[2]);
switch (parts[0].toLowerCase()) {
case "add":
System.out.println(num1 + " + " + num2 + " = " + (num1 + num2));
break;
case "subtract":
System.out.println(num1 + " - " + num2 + " = " + (num1 - num2));
break;
case "multiply":
System.out.println(num1 + " * " + num2 + " = " + (num1 * num2));
break;
case "divide":
if (num2 != 0) {
System.out.println(num1 + " / " + num2 + " = " + (num1 / num2));
} else {
System.out.println("Error: Division by zero is not allowed.");
}
break;
case "sin":
System.out.println("sin(" + num1 + ") = " + Math.sin(Math.toRadians(num1)));
break;
case "cos":
System.out.println("cos(" + num1 + ") = " + Math.cos(Math.toRadians(num1)));
break;
case "tan":
System.out.println("tan(" + num1 + ") = " + Math.tan(Math.toRadians(num1)));
break;
case "log":
System.out.println("log(" + num1 + ") = " + Math.log(num1));
break;
case "exp":
System.out.println("exp(" + num1 + ") = " + Math.exp(num1));
break;
case "sqrt":
if (num1 >= 0) {
System.out.println("sqrt(" + num1 + ") = " + Math.sqrt(num1));
} else {
System.out.println("Error: Cannot calculate the square root of a negative number.");
}
break;
default:
System.out.println("Error: Invalid operation.");
break;
}
}
scanner.close();
System.out.println("Goodbye!");
}
}
这个科学计算器支持基本的四则运算(加、减、源码乘、对数对数代码除)以及一些科学运算(正弦、源码余弦、对数对数代码正切、源码各种溯源码规格对数、对数对数代码指数和平方根)。源码用户可以通过输入相应的对数对数代码操作和两个数字来执行计算。例如,源码输入“add 2 3”将计算2加3的对数对数代码结果。
代码首先导入了`Scanner`类,源码用于从用户处获取输入。对数对数代码然后,源码在`main`方法中,对数对数代码创建了一个`Scanner`对象,用于读取用户的输入。程序通过一个无限循环来持续接收用户的输入,直到用户输入“quit”为止。
在循环中,程序首先提示用户输入一个操作,魔力时代 源码然后读取用户的输入并将其分割为多个部分。接着,程序将第二个和第三个部分转换为`double`类型的数字,并根据第一个部分(即操作)执行相应的计算。
程序使用`switch`语句来根据用户输入的操作执行相应的计算。对于基本的四则运算,程序直接执行相应的计算并输出结果。对于科学运算,程序使用了Java的`Math`类中的相应方法。例如,geowebcache源码解析对于正弦运算,程序使用了`Math.sin`方法,并将角度转换为弧度作为参数传递给它。
如果用户输入了无效的操作或无效
Numpy中的通用函数
本文将介绍Numpy库中的通用函数,帮助你深入了解Python编程中处理数组的高效方法。让我们从一元函数开始,逐步探讨到二元函数和数组操作。
### 常见一元通用函数
#### abs、fabs
计算整数、浮点数或复数的randlanet源码分析绝对值。
示例代码:
输出结果:
### sqrt
计算各元素的平方根。
示例代码:
输出结果:
### square
计算各元素的平方。
示例代码:
输出结果:
### exp
计算各元素的指数e。
示例代码:
输出结果:
### log
计算自然对数、底数为的对数、底数为2的对数、以及log(1+x)。
示例代码:
输出结果:
### sign
计算各元素的正负号,1为正数,0为零,脚本合集源码-1为负数。
示例代码:
输出结果:
### ceil
计算各元素的上取整值,即大于或等于该值的最小整数。
示例代码:
输出结果:
### floor
计算各元素的下取整值,即小于或等于该值的最大整数。
示例代码:
输出结果:
### rint
将各元素四舍五入到最接近的整数。
示例代码:
输出结果:
### modf
将数组的小数和整数部分以两个独立数组的形式返回。
示例代码:
输出结果:
### isnan
返回一个表示哪些值是NaN的布尔型数组。
示例代码:
输出结果:
### isfinite、isinf
返回表示哪些元素是有穷的或哪些元素是无穷的布尔型数组。
示例代码:
输出结果:
### 求三角函数与反三角函数
#### sin、sinh、cos、cosh、tan、tanh
普通型和双曲型三角函数。
示例代码:
输出结果:
#### arcos、arccosh、arcsin
反三角函数。
示例代码:
输出结果:
### 二维数组方法
#### add、subtract、multiply、divide、maximum、minimum、mod
进行数组元素间的加、减、乘、除运算,以及求最大值、最小值和模。
示例代码:
输出结果:
### 总结
通过本文的介绍,你已熟悉了Numpy库中的通用函数及其应用。掌握这些函数能够显著提高你的编程效率,处理数组数据更加得心应手。如果你对跨端开发小程序和APP感兴趣,欢迎关注我的公众号“Python私教”了解更多内容。若需获取本文的所有源码,请打赏元并评论“已打赏”。我是大鹏,专注于IT领域的编程知识分享,如有相关需求,欢迎留言或私信我。
G.ç¼ç åç
æ¬æç®çï¼1ãçæGa/u两ç§æ ¼å¼çåºæ¬åç
2ãçæ两ç§å缩ç®æ³çå®ç°æ¥éª¤åæä¾æºç å®ç°
G.æ¯å½é çµä¿¡èçITU-Tå®å¶åºæ¥çä¸å¥è¯é³å缩æ åï¼å®ä»£è¡¨äºå¯¹æ°PCMï¼logarithmic pulse-code modulationï¼æ½æ ·æ åï¼æ¯ä¸»æµç波形声é³ç¼è§£ç æ åï¼ä¸»è¦ç¨äºçµè¯ã
G. æ åä¸ä¸»è¦æ两ç§å缩ç®æ³ã
G.å°bit(uLaw)æè bit(aLaw)éæ ·çPCMæ°æ®ç¼ç æ8bitçæ°æ®æµï¼ææ¾çæ¶åå¨å°æ¤8bitçæ°æ®è¿åæbitæè bitè¿è¡ææ¾ï¼ä¸åäºMPEGè¿ç§å¯¹äºæ´ä½æè ä¸æ®µæ°æ®è¿è¡èèåè¿è¡ç¼è§£ç çåæ³ï¼Gæ¯æ³¢å½¢ç¼è§£ç ç®æ³ï¼å°±æ¯ä¸ä¸ªsample对åºä¸ä¸ªç¼ç ï¼æ以å缩æ¯åºå®ä¸ºï¼
G.æ¯å°è¯é³æ¨¡æä¿¡å·è¿è¡ä¸ç§é线æ§éåï¼ è¯¦ç»çèµæå¯ä»¥å¨ITU ä¸ä¸å°ç¸å ³çspec ãä¸é¢ä¸»è¦ååºä¸äºæ§è½åæ°ï¼
G.ï¼PCMæ¹å¼ï¼
ç®æ³åçï¼
A-lawçå ¬å¼å¦ä¸ï¼ä¸è¬éç¨A=.6
ç»åºå¾æ¥åæ¯å¦ä¸å¾ï¼ç¨x表示è¾å ¥çéæ ·å¼ï¼F(x)表示éè¿A-lawåæ¢åçéæ ·å¼ï¼yæ¯å¯¹F(x)è¿è¡éååçéæ ·å¼ã
ç±æ¤å¯è§
对åºåéåå ¬å¼(å³ä¸é¢å½æ°çåå½æ°)ï¼
G.Aè¾å ¥çæ¯ä½ï¼Sçé«ä½ï¼ï¼è¿ç§æ ¼å¼æ¯ç»è¿ç¹å«è®¾è®¡çï¼ä¾¿äºæ°å设å¤è¿è¡å¿«éè¿ç®ã
A-lawå¦ä¸è¡¨è®¡ç®ã
示ä¾ï¼
è¾å ¥pcmæ°æ®ä¸ºï¼äºè¿å¶å¯¹åºä¸ºï¼ ï¼
äºè¿å¶åæ¢ä¸æåç»åæ¹å¼ï¼0 ï¼
1ãè·å符å·ä½æé«ä½ä¸º0ï¼ååï¼s=1
2ãè·å强度ä½ï¼æ¥è¡¨ï¼ç¼ç å¶åºè¯¥æ¯eee=
3ãè·åé«ä½æ ·æ¬wxyz=
4ãç»å为ï¼é¢å¶æ°ä¸ºåå为ï¼å¾å°E6
使ç¨å¨åç¾åæ¥æ¬ï¼è¾å ¥çæ¯ä½ï¼ç¼ç ç®æ³å°±æ¯æ¥è¡¨ï¼è®¡ç®åºï¼åºç¡å¼+å¹³åå移å¼
μ-lawçå ¬å¼å¦ä¸ï¼Î¼åå¼ä¸è¬ä¸º
ç¸åºçμ-lawç计ç®æ¹æ³å¦ä¸è¡¨
示ä¾ï¼
è¾å ¥pcmæ°æ®ä¸º
1ãåå¾èå´å¼ï¼æ¥è¡¨å¾ + to + in intervals of
2ãå¾å°åºç¡å¼ä¸º0xA0
3ãå¾å°é´éæ°ä¸º
4ãå¾å°åºé´åºæ¬å¼
5ãå½åå¼ååºé´åºæ¬å¼å·®å¼-=
6ãå移å¼=/é´éæ°=/ï¼åæ´å¾å°
7ãè¾åºä¸º0xA0+=0xAC
A-lawåu-lawç»å¨åä¸ä¸ªåæ è½´ä¸å°±è½åç°A-lawå¨ä½å¼ºåº¦ä¿¡å·ä¸ï¼ç²¾åº¦è¦ç¨å¾®é«ä¸äºã
å®é åºç¨ä¸ï¼æ们确å®å¯ä»¥ç¨æµ®ç¹æ°è®¡ç®çæ¹å¼æF(x)ç»æ计ç®åºæ¥ï¼ç¶åè¿è¡éåï¼ä½æ¯è¿æ ·ä¸æ¥è®¡ç®éä¼æ¯è¾å¤§ï¼å®é ä¸å¯¹äºA-lawï¼A=.6æ¶ï¼ï¼æ¯éç¨æ线è¿ä¼¼çæ¹å¼æ¥è®¡ç®çï¼èμ-lawï¼Î¼=æ¶ï¼åæ¯æ®µæ线è¿ä¼¼çæ¹å¼ã
G尽管æ¯ä¸ç§é常å¤èçè¯é³ç¼ç ç®æ³ï¼åçå计ç®ä¹æ¯è¾ç®åï¼ä½æ¯å ¶ä¸ç¨å°çä¸äºåºæ¬åçåæ ·å¨å ¶ä»ç¼ç ç®æ³ä¸å¾å°äºåºç¨ï¼å¯¹å ¶è¿è¡æ·±å ¥çäºè§£æå©äºæ´å¥½ççè§£å ¶ä»çç®æ³ã
2024-11-18 20:53
2024-11-18 20:11
2024-11-18 19:53
2024-11-18 19:40
2024-11-18 18:43