新来一个同事做 PHP 两年 不会写九九乘法表。。。。

2018-11-18 15:18:48 +08:00
 chaodada

如题。。。

22323 次点击
所在节点    PHP
176 条回复
haohappy
2018-11-19 10:13:22 +08:00
这是 hr 吧 等下就一个一个地私信了
RiESA
2018-11-19 10:17:18 +08:00
@lxfxf #89 任天堂那个吗,我玩过
8355
2018-11-19 10:17:45 +08:00
看了看楼主发的帖子..
AscenZ
2018-11-19 10:19:07 +08:00
Swift,Playground 随手写了个,哪位兄弟有更优雅的写法

```swift
for col in 1...9 {
var tmn = ""
for row in 1...9 {
if row == col {
tmn = "\n"
}
if row <= col {
print("\(row)x\(col)=\(col * row) ", separator: "", terminator: tmn)
}
}
}
```

```
1x1=1
1x2=2 2x2=4
1x3=3 2x3=6 3x3=9
1x4=4 2x4=8 3x4=12 4x4=16
1x5=5 2x5=10 3x5=15 4x5=20 5x5=25
1x6=6 2x6=12 3x6=18 4x6=24 5x6=30 6x6=36
1x7=7 2x7=14 3x7=21 4x7=28 5x7=35 6x7=42 7x7=49
1x8=8 2x8=16 3x8=24 4x8=32 5x8=40 6x8=48 7x8=56 8x8=64
1x9=9 2x9=18 3x9=27 4x9=36 5x9=45 6x9=54 7x9=63 8x9=72 9x9=81
```
saintatgod
2018-11-19 10:25:23 +08:00
我面试时候写过这个.
不过面试我的人说...我的输出没有换行, 格式不对, 所以写的是不对的.
JerryCha
2018-11-19 10:36:45 +08:00
对不起我也写了十分钟

```
#include <stdio.h>

void foo(int i, int j);

int main() {
foo(1,1);
return 0;
}

void foo(int i, int j) {
if (i > 9)
printf("");
else {
printf("%dx%d=%d\t", j, i, i*j);
j++;
if (j <= i)
foo(i, j);
else {
printf("\n");
foo(i+1, 1);
}
}
}
```
lbp0200
2018-11-19 10:42:02 +08:00
谭浩强的弟子必备吗?
非我族类,其心必异,让他滚。
YouLoveme
2018-11-19 10:58:46 +08:00
```bash
#!/bin/awk
awk 'BEGIN{for(i=1;i<=9;i++){for(j=1;j<=i;j++){printf j"x"i"="i*j"\t"};print}}'
```
```
1x1=1
1x2=2 2x2=4
1x3=3 2x3=6 3x3=9
1x4=4 2x4=8 3x4=12 4x4=16
1x5=5 2x5=10 3x5=15 4x5=20 5x5=25
1x6=6 2x6=12 3x6=18 4x6=24 5x6=30 6x6=36
1x7=7 2x7=14 3x7=21 4x7=28 5x7=35 6x7=42 7x7=49
1x8=8 2x8=16 3x8=24 4x8=32 5x8=40 6x8=48 7x8=56 8x8=64
1x9=9 2x9=18 3x9=27 4x9=36 5x9=45 6x9=54 7x9=63 8x9=72 9x9=81
```
Neojoke
2018-11-19 11:03:00 +08:00
大家觉得,为什么要考量用代码实现九九乘法口诀表?目的是测试对方什么能力?
qiayue
2018-11-19 11:04:07 +08:00
@hiyouli 有,加我 wx qiayue
tailf
2018-11-19 11:05:56 +08:00
我也不会,但是我给 PHP 贡献过代码
yx13
2018-11-19 11:08:48 +08:00
<?php
$a = [1];
$i = 0;
while (count($a) != 10) {
$result = $a[$i] * $a[count($a)-1];
echo "{$a[$i]} X {$a[count($a)-1]} = " . "{$result}\t";
$i++;
if (count($a) == $i) {
$a[$i] = $a[count($a)-1] + 1;
$i = 0;
echo "\n";
}
}
?>
zifangsky
2018-11-19 11:12:46 +08:00
嗯,然后呢,影响 PHP 成为最好的语言吗?
jinzhe
2018-11-19 11:12:51 +08:00
凑个热闹

```js
let line="";
for(let i=1;i<=9;i++){
for(let j=1;j<=i;j++){
line+=`${j}x${i}=${i*j}\t`;
}
line+=`\n`;
}
console.log(line);
```

1x1=1
1x2=2 2x2=4
1x3=3 2x3=6 3x3=9
1x4=4 2x4=8 3x4=12 4x4=16
1x5=5 2x5=10 3x5=15 4x5=20 5x5=25
1x6=6 2x6=12 3x6=18 4x6=24 5x6=30 6x6=36
1x7=7 2x7=14 3x7=21 4x7=28 5x7=35 6x7=42 7x7=49
1x8=8 2x8=16 3x8=24 4x8=32 5x8=40 6x8=48 7x8=56 8x8=64
1x9=9 2x9=18 3x9=27 4x9=36 5x9=45 6x9=54 7x9=63 8x9=72 9x9=81
fanhuai
2018-11-19 11:16:07 +08:00
StringBuilder tx = new StringBuilder();
for (int i = 1; i < 10; i++)
{
for (int j = 1; j <= i; j++)
{
tx.Append(j + "*" + i + "=" + j * i);
tx.Append("\t");
}
tx.Append("\n");
}
richTextBox1.Text = tx.ToString();
JaguarJack
2018-11-19 11:18:26 +08:00
php -r "for($i=1;$i<=9;$i++){for($j=1;$j<=$i;$j++){echo sprintf('%d*%d=%d ', $i, $j, $i*$j);} echo PHP_EOL;}";
supuwoerc
2018-11-19 11:25:19 +08:00
就算再简单,我们也不会!~
icaca
2018-11-19 11:31:40 +08:00
不应该是二进制的么?
wuxi889
2018-11-19 11:37:48 +08:00
@yx13
<?php
for ($i = 9; $i > 0; $i--) {
for ($j = $i; $j > 0; $j--) {
echo $i, ' × ', $j, ' = ', $i * $j, '|';
}
echo PHP_EOL;
}
?>
yx13
2018-11-19 11:42:13 +08:00
@wuxi889 谢谢兄得, 我才刚学 php,看到啥都想写一哈(,,•́ . •̀,,)

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/508959

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX