diff options
| author | Abigail <abigail@abigail.freedom.nl> | 2022-01-06 18:22:18 +0100 |
|---|---|---|
| committer | Abigail <abigail@abigail.freedom.nl> | 2022-01-06 18:22:18 +0100 |
| commit | ec311b177fa675877c45ed1518dceff5c787d13b (patch) | |
| tree | 09541a5ab75354a38231b9c2fae655f756e4390b /challenge-003/abigail | |
| parent | bb78b469bdba75ebe82f4f7c9d728281b97d515c (diff) | |
| download | perlweeklychallenge-club-ec311b177fa675877c45ed1518dceff5c787d13b.tar.gz perlweeklychallenge-club-ec311b177fa675877c45ed1518dceff5c787d13b.tar.bz2 perlweeklychallenge-club-ec311b177fa675877c45ed1518dceff5c787d13b.zip | |
Week 3, part 2. Go and Java solutions.
Diffstat (limited to 'challenge-003/abigail')
| -rw-r--r-- | challenge-003/abigail/README.md | 2 | ||||
| -rw-r--r-- | challenge-003/abigail/go/ch-2.go | 40 | ||||
| -rw-r--r-- | challenge-003/abigail/java/ch-2.java | 34 |
3 files changed, 76 insertions, 0 deletions
diff --git a/challenge-003/abigail/README.md b/challenge-003/abigail/README.md index 5a95fe5f0c..966649afde 100644 --- a/challenge-003/abigail/README.md +++ b/challenge-003/abigail/README.md @@ -20,6 +20,8 @@ * [Bash](bash/ch-2.sh) * [bc](bc/ch-2.bc) * [C](c/ch-2.c) +* [Go](go/ch-2.go) +* [Java](java/ch-2.java) * [Lua](lua/ch-2.lua) * [Node.js](node/ch-2.js) * [Perl](perl/ch-2.pl) diff --git a/challenge-003/abigail/go/ch-2.go b/challenge-003/abigail/go/ch-2.go new file mode 100644 index 0000000000..d66b10dec9 --- /dev/null +++ b/challenge-003/abigail/go/ch-2.go @@ -0,0 +1,40 @@ +package main + +// +// See https://theweeklychallenge.org/blog/perl-weekly-challenge-003 +// + +// +// Run as: go run ch-2.go < input-file +// + +import ( + "fmt" +) + +func main () { + for { + var max int + n, err := fmt . Scanf ("%d", &max) + if n != 1 || err != nil { + break + } + + current_row := make ([] int, 1) + current_row [0] = 1; + fmt . Printf ("1\n") + + for row := 1; row <= max; row ++ { + next_row := make ([] int, row + 1) + next_row [0] = 1 + next_row [row] = 1 + fmt . Printf ("1 ") + for col := 1; col < row; col ++ { + next_row [col] = current_row [col - 1] + current_row [col] + fmt . Printf ("%d ", next_row [col]) + } + fmt . Printf ("1\n") + current_row = next_row + } + } +} diff --git a/challenge-003/abigail/java/ch-2.java b/challenge-003/abigail/java/ch-2.java new file mode 100644 index 0000000000..8f932a81db --- /dev/null +++ b/challenge-003/abigail/java/ch-2.java @@ -0,0 +1,34 @@ +// +// See https://theweeklychallenge.org/blog/perl-weekly-challenge-003 +// + +// +// Run as: ln ch-2.java ch2.java; javac ch2.java; java ch2 < input-file +// + +import java.util.*; + +public class ch2 { + public static void main (String [] args) { + Scanner scanner = new Scanner (System . in); + while (scanner . hasNextInt ()) { + int max = scanner . nextInt (); + int [] current_row = new int [1]; + current_row [0] = 1; + System . out . println ("1"); + + for (int row = 1; row <= max; row ++) { + int [] next_row = new int [row + 1]; + next_row [0] = 1; + next_row [row] = 1; + System . out . print ("1 "); + for (int col = 1; col < row; col ++) { + next_row [col] = current_row [col - 1] + current_row [col]; + System . out . printf ("%d ", next_row [col]); + } + System . out . println ("1"); + current_row = next_row; + } + } + } +} |
