阅读:2273回复:5
求解两个JAVA的题目
<P ><FONT size=3><FONT face=宋体>第一题:</FONT></FONT></P>
<P ><FONT size=3><FONT face=宋体> 编写一个程序,从文本文件input.txt中读取立方体的长、宽、高;圆的半径,根据这些数据求出立方体的体积、圆的面积,将体积和面积同时输出到屏幕和一个名为output.txt的文本文件中(和程序同目录),要求含有提示信息(如长方体的体积:1536.4)。要求自己在程序所在的目录建立一个文本文件input.txt,内容如下:<p></p></FONT></FONT></P> <P ><FONT size=3><FONT face=宋体>所需的各参数如下:<p></p></FONT></FONT></P> <P ><FONT size=3><FONT face=宋体>立方体的长、宽、高分别为:<p></p></FONT></FONT></P> <P ><FONT size=3><FONT face=宋体>13.25 13.0 6<p></p></FONT></FONT></P> <P ><FONT size=3><FONT face=宋体>圆的半径为:<p></p></FONT></FONT></P> <P ><FONT size=3><FONT face=宋体>42.123<p></p></FONT></FONT></P> <P ><FONT size=3><FONT face=宋体>第二题:</FONT></FONT></P> <P ><FONT size=3><FONT face=宋体> 编写一个程序,输出上题中使用的文件input.txt中的这些属性:文件的路径、文件的父目录、是否可写、文件的大小,要求输出到屏幕。<p></p></FONT></FONT></P> |
|
|
1楼#
发布于:2004-04-24 17:12
希望有人半帮帮楼猪
|
|
|
2楼#
发布于:2004-04-24 19:31
<P>第一题的答案</P>
<P>import java.io.*; import java.util.*; public class Test { private float length,width,height; private float radius;</P> <P> private float mianji,tiji; Test() { try { /* *读出文件中的数据 */ FileReader fin = new FileReader("input.txt"); BufferedReader in = new BufferedReader(fin); String line = in.readLine();</P> <P> line = line.trim(); //去除字符串中前后空格 StringTokenizer t = new StringTokenizer(line); length = Float.parseFloat(t.nextToken()); width = Float.parseFloat(t.nextToken()); height = Float.parseFloat(t.nextToken());</P> <P> line = in.readLine(); radius = Float.parseFloat(line); in.close(); fin.close();</P> <P> tiji = length*width*height; mianji = (float)Math.PI*radius*radius;</P> <P> /*写出数据 */ FileWriter fout = new FileWriter("output.txt"); BufferedWriter out = new BufferedWriter(fout);</P> <P> out.write("立方体的体积是:"+ Float.toString(tiji)); out.newLine(); out.write("圆的面积是:"+Float.toString(mianji));</P> <P> out.close(); fout.close();</P> <P> } catch(IOException e) {} } public void print() { System.out.println(length); System.out.println(width); System.out.println(height); System.out.println(radius); } public static void main(String[] args) { Test test = new Test(); test.print(); } }</P> [此贴子已经被作者于2004-4-26 20:32:02编辑过]
|
|
|
3楼#
发布于:2004-04-24 20:41
<P><img src="images/post/smile/dvbbs/em04.gif" /></P><P>谢谢<b><FONT color=#000066>bukunu</FONT></b></P><img src="images/post/smile/dvbbs/em05.gif" />
|
|
|
4楼#
发布于:2004-04-26 21:03
<P>谢谢帮忙!可是文本文档中的数据应该怎么写呢,为什么没法把那里面的数据读到程序中,用以计算?</P>
|
|
|
5楼#
发布于:2004-04-26 21:09
<P>能解释一下吗?</P><P>import java.io.*;
//import java.lang.Math.*; class GIS02_109042002140_Main21{ public static void main(String[] args) throws Exception { try { DataInputStream in1 = new DataInputStream(new FileInputStream("input.txt")); DataOutputStream out = new DataOutputStream(new FileOutputStream("output.txt")); BufferedReader in2 = new BufferedReader( new InputStreamReader(new FileInputStream("input.txt")));</P><P> String inputLine1=""; String inputLine2=""; String inputLine3=""; String inputLine4=""; String inputLine5=""; float Len=0.0f; float Wid=0.0f;</P><P> float Round=0.0f; float V1=0.0f; float S2=0.0f;</P><P> // while (true) { inputLine1=in2.readLine(); inputLine2=in2.readLine(); inputLine3=in2.readLine(); inputLine4=in2.readLine(); inputLine5=in2.readLine(); in1.readLine(); in1.readLine(); Len = in1.readFloat(); in1.readChar(); // throws out the tab Wid = in1.readFloat(); //in1.readChar(); int Hei = in1.readInt();</P><P> in1.readChar(); in1.readLine(); //in1.readChar(); Round=in1.readFloat(); System.out.println(inputLine1); System.out.println(inputLine2); System.out.println(inputLine3); System.out.println(inputLine4); System.out.println(inputLine5); // }</P><P> V1=Len*Wid*Hei; S2=(float)Round*(float)Math.PI*(float)Math.PI; System.out.println("长方体的体积: " + V1 +'\n'+"圆的面积:" + S2);</P><P>/* out.writeFloat(Len);</P><P> out.writeFloat(Wid);</P><P> out.writeChar('\t'); out.writeInt(Hei);</P><P> out.writeFloat(Round); out.writeChar('\t'); out.writeFloat(V1); out.writeChars(inputLine1); */</P><P> //out.writeChars("长方体的体积"); //out.writeChar('\t'); //out.writeFloat(V1); out.writeChar('\n'); //out.writeChars("圆的面积:"); //out.writeChar('\t'); //out.writeFloat(S2);</P><P>/* ; out.writeChars(inputLine2); out.writeChar('\n'); out.writeFloat(Len); out.writeChar('\t'); out.writeFloat(Wid); out.writeChar('\t'); out.writeInt(Hei); out.writeChar('\n');</P><P>*/ in1.close(); out.close();</P><P> } catch (EOFException e) { } catch (IOException e) { System.out.println("Error -- " + e.toString()); }</P><P> } }</P> |
|
|