| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 746 人关注过本帖
标题:[求助]一个比较小的程序,怎么样解决
只看楼主 加入收藏
冷泉
Rank: 1
等 级:新手上路
帖 子:18
专家分:0
注 册:2006-3-30
收藏
 问题点数:0 回复次数:9 
[求助]一个比较小的程序,怎么样解决
我们老师出了一道题,题目如下:
通过键盘的输入两个整型数,比入你 输入 4和3,打印如下的样式
1 1 1
1 2 1
1 2 1
1 1 1
输入3和4就打印
1 1 1 1
1 2 2 1
1 1 1 1

样式基本如下:
1 1 1 1 1 1
1 2 2 2 2 1
1 2 3 3 2 1
1 2 2 2 2 1
1 1 1 1 1 1

哪位大哥给个答案或者提示

要是行列不相等呢,怎么处理啊

[此贴子已经被作者于2007-10-25 22:11:11编辑过]

2007-10-21 16:29
袁小六
Rank: 1
等 级:新手上路
帖 子:85
专家分:0
注 册:2007-8-3
收藏
得分:0 

我也回去想象

[此贴子已经被作者于2007-10-21 20:02:38编辑过]


這個丗堺還钚夠瘋誑~~~
2007-10-21 19:33
lzf0112
Rank: 1
等 级:新手上路
帖 子:244
专家分:0
注 册:2006-4-9
收藏
得分:0 

应该是这样的吧:
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 2 2 2 2 1 1 2 2 2 2 1
1 1 1 1 1 1 --> 1 2 2 2 2 1 --> 1 2 3 3 2 1
1 1 1 1 1 1 1 2 2 2 2 1 1 2 2 2 2 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

for(int m=0;m<=6/2-1;m++)
{
for(int i=m;i<=4-m;i++)
for(int j=m;j<=5-m;j++)
a[i][j]=m+1;
}

好久没写了不知道对不?

2007-10-21 21:51
canyue
Rank: 1
等 级:新手上路
威 望:1
帖 子:159
专家分:0
注 册:2007-10-4
收藏
得分:0 

对不起 ,我题还没看清楚就回答你的问题了,
提供了与提意不符的答案,在此向楼主道歉。

[此贴子已经被作者于2007-10-30 21:23:01编辑过]


别看我现在只有这么亮,总有一天会月圆的!
2007-10-21 22:39
zwfc
Rank: 1
等 级:新手上路
帖 子:65
专家分:0
注 册:2005-10-17
收藏
得分:0 

写了个,不知道是不是楼主想要的。

[CODE]
import java.io.*;
public class pailie {
public static void main(String[] args) throws IOException {
BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
int r, c;
r = Integer.parseInt(in.readLine());
c = Integer.parseInt(in.readLine());
int[][] a = new int[r][c];
seta(a, 0, r, c);
for (int i = 0; i < r; i++) {
for (int i1 = 0; i1 < c; i1++)
System.out.print(a[i][i1] + " ");
System.out.println();
}
}
public static void seta(int[][] aa, int k, int rr, int cc) {
for (int i = k; i < rr; i++) {
for (int j = k; j < cc; j++) {
aa[i][j] += 1;
}
}
if (rr - 1 >= k + 1 && cc - 1 >= k + 1) {
seta(aa, k + 1, rr - 1, cc - 1);
}
}
}
[/CODE]



2007-10-24 11:09
帅浪
Rank: 1
等 级:新手上路
威 望:1
帖 子:139
专家分:0
注 册:2007-4-4
收藏
得分:0 

等会回复


世上事有难易乎?为之?则难者亦易矣;不为,则易者亦难矣
2007-10-24 15:30
hjlwlyhjl
Rank: 1
等 级:新手上路
帖 子:71
专家分:0
注 册:2006-12-6
收藏
得分:0 

import java.io.*;

public class Hello{
public static void main(String []args){
int r = 0;
int c = 0;
try{
BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
System.out.println("请输入两个正整数,且用回车键将两数分割:");
do{
r = Integer.parseInt(in.readLine());
c = Integer.parseInt(in.readLine());
if(r <= 0||c <= 0){
System.out.println("您输入的两个数不合格,请重新输入!");
}
}
while(r <= 0 || c <= 0);
}
catch(Exception e){
e.printStackTrace();
}
int temp1;
int temp2;
int a[][] = new int[r][c];
for(int i = 0;i < r;i ++){
for(int j = 0;j < c;j ++){
temp1 = r-i-1;
temp2 = c-j-1;
a[i][j] = (new Hello()).min(i,j,temp1,temp2)+1;
}
}
for(int i = 0;i < r;i ++){
for(int j = 0;j < c;j ++){
System.out.print(a[i][j]+" ");
}
System.out.println();
}

}
public int min(int a,int b,int c,int d){
if(a <= b && a <= c && a <= d) return a;
else if(b <= a && b <= c && b <= d) return b;
else if(c <= a && c <= b && c <= d) return c;
else if(d <= a && d <= b && d <= c) return d;
else return 0;

}
}


2007-10-24 22:41
魔鬼之子
Rank: 1
来 自:地狱之都
等 级:新手上路
帖 子:100
专家分:0
注 册:2007-9-22
收藏
得分:0 
各位都很厉害呀!

只有仇恨才是永恒的
2007-10-30 11:03
冷泉
Rank: 1
等 级:新手上路
帖 子:18
专家分:0
注 册:2006-3-30
收藏
得分:0 
回复:(hjlwlyhjl)import java.io.*;public class...
谢啦,你帮了小弟的一个忙,在此感激不尽啊,我对这程序设计基础掌握不太好啊。
2007-11-04 12:35
batwyx
Rank: 1
等 级:新手上路
威 望:1
帖 子:88
专家分:0
注 册:2007-4-16
收藏
得分:0 
以下是引用hjlwlyhjl在2007-10-24 22:41:37的发言:

import java.io.*;

public class Hello{
public static void main(String []args){
int r = 0;
int c = 0;
try{
BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
System.out.println("请输入两个正整数,且用回车键将两数分割:");
do{
r = Integer.parseInt(in.readLine());
c = Integer.parseInt(in.readLine());
if(r <= 0||c <= 0){
System.out.println("您输入的两个数不合格,请重新输入!");
}
}
while(r <= 0 || c <= 0);
}
catch(Exception e){
e.printStackTrace();
}
int temp1;
int temp2;
int a[][] = new int[r][c];
for(int i = 0;i < r;i ++){
for(int j = 0;j < c;j ++){
temp1 = r-i-1;
temp2 = c-j-1;
a[i][j] = (new Hello()).min(i,j,temp1,temp2)+1;
}
}
for(int i = 0;i < r;i ++){
for(int j = 0;j < c;j ++){
System.out.print(a[i][j]+" ");
}
System.out.println();
}

}
public int min(int a,int b,int c,int d){
if(a <= b && a <= c && a <= d) return a;
else if(b <= a && b <= c && b <= d) return b;
else if(c <= a && c <= b && c <= d) return c;
else if(d <= a && d <= b && d <= c) return d;
else return 0;

}
}



a[i][j] = (new Hello()).min(i,j,temp1,temp2)+1;这句太销魂了,受教了!

可是这句是什么道理,阁下怎么想到这个算法的?

[此贴子已经被作者于2007-11-4 22:35:39编辑过]


2007-11-04 22:33
快速回复:[求助]一个比较小的程序,怎么样解决
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.020322 second(s), 10 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved