JAVA编写买马的简单介绍
今天给各位分享JAVA编写买马的知识,其中也会对进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
本文目录一览:
- 1、java程序编写:有100匹马,驮100担货,大马驮3担,中马驮2担,两匹小马驮1担,问有大、中、小马各多少?
- 2、用java语言编写一个程序修改一个txt文件
- 3、编写java循环程序,有100匹马驮100担货,大马驮3担,中马驮2担,两匹小马驮一担,问有大、中
java程序编写:有100匹马,驮100担货,大马驮3担,中马驮2担,两匹小马驮1担,问有大、中、小马各多少?
/*题目:
*
* java程序编写:有100匹马,驮100担货,大马驮3担,中马驮2担,两匹小马驮1担,问有大、中、小马各多少?
*
* 编程思路:
*
* 假设: 大马 x个 中马 y 个 小马 (100-x-y) 个
* 那么 3*x + 2*y + (100-x-y)/2 = 100
*
* 并且 x=0 y=0 (100-x-y)=0[即 x+y=100]
* 另外 两匹小马驮1担, 说明 小马必须是双数
*
* 列出所有可能性并输出 多有满足条件的情况即可
* */
public class Demo
{
public static void main(String [] args)
{
getResult();
}
private static void getResult()
{
int count = 0;
System.out.println("满足条件的情况有:");
for (int x = 0;x=100;x++)
{
for(int y = 0;y=100;y++)
{
int z = 100-x-y;
if( z%2==03*x + 2*y + z/2 == 100)
{
count++;
System.out.println("情况"+count+":大马"+x+"个,"+"中马"+y+"个"+",小马"+z+"个");
}
}
}
}
}
用java语言编写一个程序修改一个txt文件
不早说这是rt文件.....
分析了下你给的例子,这个例子恰到好处,多一个空格在realPlayer里显示就有问题.....我分析了下,realPlayer里显示的东东的第一行有20个汉字(仅针对汉字和汉字标点,英语未知,未验证),其余行都是19个汉字......
这下好办了,首先,你的txt里必须放的是主体部分的内容,不能有标题(标题需要手动在程序里加入,放在txt里也不好读出来).....首先,把整段文字(从"传说古代"到"也没有见到")读到一个字符串里,用trim()方法除去首尾的空格....然后截取前20个汉字作为第一行....给它加上time begin="2"/ ...然后把后面的文字每隔19个汉字进行截取..依次加上time begin="3,4,5.."/ ....然后不停地前后追加标签就行了.......
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.*;
import javax.swing.*;
import javax.swing.filechooser.FileNameExtensionFilter;
public class SplitString extends JFrame implements ActionListener {
JPanel pane = new JPanel();
JLabel lbl = new JLabel("为此文件填写标题:");
JScrollPane scrollPane;
JTextField text = new JTextField(20);
JButton buttOpen = new JButton("打开文件");
JButton buttTrans = new JButton("开始转换");
JButton buttSave = new JButton("保存文件");
JTextArea area = new JTextArea(15, 30);
SplitString() {
//setLayout(new GridLayout(3, 2));
scrollPane = new JScrollPane(area);
text.setText("求千里马");
pane.add(lbl);
pane.add(text);
pane.add(buttOpen);
pane.add(buttTrans);
pane.add(buttSave);
area.setLineWrap(true);
pane.add(scrollPane);
buttTrans.addActionListener(this);
buttOpen.addActionListener(this);
buttSave.addActionListener(this);
this.add(pane);
this.setVisible(true);
this.setBounds(30, 30, 370, 400);
}
public static void main(String[] args) {
SplitString ss = new SplitString();
}
/**
* 其实java的编码就是unicode,所以截取中文的时候不会出现乱码问题.
*/
public String splitFunction(String splitStr, int splitByte) {
String beiFen = splitStr;
splitStr = splitStr.substring(20);
String result = "";
int loopCount = (splitStr.length() % splitByte == 0) ? (splitStr
.length() / splitByte) : (splitStr.length() / splitByte + 1);
int m = 3;
for (int i = 1; i = loopCount; i++) {
if (i == loopCount) {
result += "time begin=\""
+ m
+ "\"/"
+ splitStr.substring((i - 1) * splitByte, splitStr
.length());
} else {
result += "time begin=\""
+ m
+ "\"/"
+ splitStr.substring((i - 1) * splitByte,
(i * splitByte));
}
m++;
}
System.out.println();
System.out.println();
result = "time begin=\"2\"/ " + beiFen.substring(0, 20) + result;
result = "p" + result + "/p";
result = "bcentertime begin=\"1\"/" + text.getText()
+ "/center/b\n" + result;
result = "font face=\"system\" charset=\"gb2312\" " + "br/\n"
+ result + "/font";
result = "window type=\"teleprompter\" height=\"280\" duration=\"55\" bgcolor=\"lime\" wordwrap=\"true\"\n"
+ result + "/window ";
System.out.println(result);
return result;
}
public void actionPerformed(ActionEvent e) {
if (e.getSource() == buttTrans) {
String aa = area.getText();
aa = " " + aa.trim();
String bb = splitFunction(aa, 19);
area.setText("");
area.setText(bb);
}
if (e.getSource() == buttOpen) {
//在这里,换成了JFileChooser,对图像文件进行过滤...
//如果你非要用FileDialog,我就不知道怎么过滤了.....
JFileChooser chooser = new JFileChooser();
FileNameExtensionFilter filter = new FileNameExtensionFilter(
"txt file", "txt");
chooser.setFileFilter(filter);
int returnVal = chooser.showOpenDialog(this);
if (returnVal == JFileChooser.APPROVE_OPTION) {
try {
area.setText("");
File file = chooser.getSelectedFile();
BufferedReader input = new BufferedReader(new FileReader(
file));
String line = input.readLine();
while (line != null) {
area.append(line + "\n");
line = input.readLine();
}
} catch (Exception es) {
System.out.println("文件解析出错");
}
}
}
if (e.getSource() == buttSave) {
if (area.getText().trim().equals("")) {
JOptionPane.showMessageDialog(this, "无法保存", "警告",
JOptionPane.ERROR_MESSAGE);
} else {
JFileChooser fileChooser = new JFileChooser();
int result = fileChooser.showSaveDialog(this);
if (result == JFileChooser.CANCEL_OPTION) {
}
File fileName = fileChooser.getSelectedFile();
try {
FileWriter out = new FileWriter(fileName.getAbsolutePath());
out.write(area.getText());
out.close();
} catch (Exception es) {
JOptionPane.showMessageDialog(this, fileName.getName()
+ "文件不存在!\n请检查所给的文件名是否正确!", "无效的文件名",
JOptionPane.ERROR_MESSAGE);
}
}
}
}
}
编写java循环程序,有100匹马驮100担货,大马驮3担,中马驮2担,两匹小马驮一担,问有大、中
设大、中、小马数量分别为x、y、z,那么:
3x+2y+z/2=100
x+y+z=100
简单置换下,可以得到5x+3y=100,马数不可能出现负数,也不为0,所以x=19(19=(100-3)/5)
int x=1,y=0,z=0,tmp=0;// 预定义几个变量。如果不是为了代码易读,tmp可省略
for (; x 20; x++) {
tmp = 100 - 5 * x;
y = tmp / 3;
z = 100 - x - y;
if (z % 2 != 0) continue;// 小马必须是两匹在一起,所以z需是偶数
if (6 * x + 4 * y + z != 200) continue;// 检查是否满足第一公式
System.out.printf("[x,y,z]=%02d,%02d,%02d;6x+4y+2z=%d;x+y+z=%d\r\n"//
, x, y, z, (6 * x + 4 * y + z), (x + y + z));
}
JAVA编写买马的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于、JAVA编写买马的信息别忘了在本站进行查找喔。