♪♪Perlの問題に・・・♪♪

このエントリーをはてなブックマークに追加
1m(^▽^)m
え〜と、学校でPerlの問題を出されました。
つか、全然わからないんです T_T
誰か教えてください〜

問1 学籍番号の下2桁の数字をabとする(例、学籍番号12345であればa=4, b=5)。
   10a+b+1から10a+b+20までの整数の和を求める。
問2 5つの数字をキー入力すると最大の数を書き出す。

の2問です。おねがいします m(〜_〜)m
2デフォルトの名無しさん:2001/07/19(木) 18:10
教えて君は逝ってよし
end.
3デフォルトの名無しさん:2001/07/19(木) 18:15
終了ですね。
4デフォルトの名無しさん:2001/07/19(木) 18:18
孵れ。
5m(^▽^)m:2001/07/19(木) 18:19
T_T
いや、かなり困ってるんで・・・おねがいします
6デフォルトの名無しさん:2001/07/19(木) 18:22
いや、かなり困ってるんで・・・おねがいします
いや、かなり困ってるんで・・・おねがいします
いや、かなり困ってるんで・・・おねがいします
いや、かなり困ってるんで・・・おねがいします
いや、かなり困ってるんで・・・おねがいします
いや、かなり困ってるんで・・・おねがいします
いや、かなり困ってるんで・・・おねがいします
いや、かなり困ってるんで・・・おねがいします
いや、かなり困ってるんで・・・おねがいします
いや、かなり困ってるんで・・・おねがいします
いや、かなり困ってるんで・・・おねがいします
いや、かなり困ってるんで・・・おねがいします
いや、かなり困ってるんで・・・おねがいします
いや、かなり困ってるんで・・・おねがいします
いや、かなり困ってるんで・・・おねがいします
いや、かなり困ってるんで・・・おねがいします
いや、かなり困ってるんで・・・おねがいします
いや、かなり困ってるんで・・・おねがいします
いや、かなり困ってるんで・・・おねがいします
いや、かなり困ってるんで・・・おねがいします
7デフォルトの名無しさん:2001/07/19(木) 18:23
8m(^▽^)m:2001/07/19(木) 18:25
教えろっつてんだろ ボケッ
9デフォルトの名無しさん:2001/07/19(木) 18:29
投稿日:2001/07/19(木) 18:08
10デフォルトの名無しさん:2001/07/19(木) 18:41
うぁ、無茶苦茶簡単だ。。。
11デフォルトの名無しさん:2001/07/19(木) 19:10
さぁ、もうすぐ夏休みだ!!!!!!!!!!!!!
プログラム板のみんな気を引き締めろ!!!!!!!!!!!!
12デフォルトの名無しさん:2001/07/19(木) 19:10
>>1
ネタだということがバレバレ
13デフォルトの名無しさん:2001/07/19(木) 21:23
ワラタsage
14デフォルトの名無しさん:2001/07/19(木) 22:53
#!C:\perl\bin\perl -w

use strict;
use English;

MAIN: {
  my $id;
  my $i;
  my $j;
  my $start;
  my $end;
  my $total = 0;

  $id = shift(@ARGV);

  if (not defined($id)) {
    die "Usage: xxx.pl {your_id}\n";
  }

  ($i, $j) = $id =~ m/([0-9])([0-9])$/;

  if (not defined($i) or not defined($j)) {
    die "Invalid format: $id\n";
  }

  $start = 10*$i + $j + 1;
  $end  = 10*$i + $j + 20;

  for (my $k = $start; $k <= $end; $k++) {
    $total += $k;
  }

  print "total: ", $total, "\n";
}
15デフォルトの名無しさん:2001/07/19(木) 23:10
>>14
止めろヴァカ
16デフォルトの名無しさん:2001/07/19(木) 23:10
#!C:\perl\bin\perl -w

use strict;
use English;

MAIN: {
  my @numbers;

  @numbers = @ARGV;

  if (@numbers != 5) {
    die "Usage: xxx.pl {num1} {num2} {num3} {num4} {num5}\n";
  }

  foreach my $num (@numbers) {
    if ($num !~ m/^[0-9]{1}$/) {
      die "Usage: xxx.pl {num1} {num2} {num3} {num4} {num5}\n";
    }
  }

  @numbers = sort({$b <=> $a} @numbers);
  print "number: ", join("", @numbers), "\n";
}
17デフォルトの名無しさん:2001/07/19(木) 23:45
>>16
手抜きすれば1行でかけるのもすごいよな。。。
print "number: ", join("", sort({$b <=> $a} @ARGV)), "\n";
18デフォルトの名無しさん:2001/07/20(金) 00:10
>>17
しかし、それはプロの書くコードではない。
19デフォルトの名無しさん:2001/07/20(金) 00:19
>>18
オレいっつもそんなコードばっかり書いてる。(死
20デフォルトの名無しさん:2001/07/20(金) 01:43
>>14
頭悪いな。等差数列の和の公式くらい使え。

#!C:\perl\bin\perl -w

use strict;
use English;

MAIN: {
  my $id;
  my $i;
  my $j;
  my $start;
  my $d = 1;
  my $n = 20;
  my $total = 0;

  $id = shift(@ARGV);

  if (not defined($id)) {
    die "Usage: xxx.pl {your_id}\n";
  }

  ($i, $j) = $id =~ m/([0-9])([0-9])$/;

  if (not defined($i) or not defined($j)) {
    die "Invalid format: $id\n";
  }

  $start = 10*$i + $j + 1;
  $total = $n * (2*$start + $d*($n - 1)) / 2;

  print "total: ", $total, "\n";
}
21デフォルトの名無しさん:2001/07/20(金) 01:51
>>19
こんなコードか?
print "total: ", substr($ARGV[0], -2)*20+210 ;
22デフォルトの名無しさん
答1
@_=@ARGV;if($#_||$_[0]!~s/^.*(\d\d)$/$1*20+210/e){@_="Error";}print"Total: @_";
答2
if(grep(/\D/,@_=sort{$b-$a}@ARGV)||($#_-=4)){@_="Error";}print"Namber: @_";