Project1

标题: 大家会哪几种代码? [打印本页]

作者: 876加几    时间: 2014-7-30 13:42
标题: 大家会哪几种代码?
本帖最后由 876加几 于 2014-7-30 17:50 编辑

我会Ruby、VB和VB.NET。
代码演示:
RUBY 代码复制
  1. array = [1,2,3,4]
  2. array.clear
  3. p array #=>[]
  4. p array[0] #=> nil
  5. class Array
  6.   def self.plus(ary1, ary2)
  7.     return ary1 + ary2
  8.   end
  9. end
  10. p Array.plus([1],[2]) #=>[1,2]

VB 代码复制
  1. Dim i As Integer
  2. For i = 0 To 10
  3.   MsgBox(i.ToString) '=>0~10
  4. End For
  5. '其实是VB.NET

好了,请大家尽快投票吧。
作者: 余烬之中    时间: 2014-7-30 14:04
本帖最后由 余烬之中 于 2014-7-30 16:44 编辑

你没发现ruby有两项吗

我还会伪代码(这是只有笨蛋才能看到的神奇文字

RUBY 代码复制
  1. eval "Dim i As Integer
  2. For i = 0 To 10
  3.   MsgBox(i.ToString) '=>0~10
  4. Next".each_line.map{|line|
  5.   case line
  6.   when /^\s*Dim/
  7.     line.sub!(/^Dim/){}
  8.     line.gsub!(/\s+(.+)\s+As\s+(.+)($|,)/){ "#$1 = #{ {"Integer" => "0"}[$2] }" }
  9.   when /^\s*For/
  10.     line.sub!(/^For\s+(.+)\s+=\s+(\d+)\s+To\s+(\d+)/){ "#$2.upto(#$3){|#$1|" }
  11.   when /^\s*Next/
  12.     line.sub!(/^\s*Next.*/){ "}" }
  13.   else
  14.     line.gsub!(/MsgBox\((.*)\)/){ "puts #$1"}
  15.     line.gsub!(/'/){ "#" }
  16.     line.gsub!(/([^.]+)\.([^.]+?)(\s+.+|$)/){ "#$1.#{ {"ToString" => "to_s"}[$2] }#$3" }
  17.   end
  18.   line
  19. }.join

作者: shy    时间: 2014-7-30 14:10
就会一点从师兄那学到的C
作者: 你最珍贵    时间: 2014-7-30 14:15
半种  
作者: taroxd    时间: 2014-7-30 14:19
本帖最后由 taroxd 于 2014-7-30 14:35 编辑

你没发现你 Ruby 的代码是错误的吗?别跟我说你这一段是在 Array.instance_eval 里面的

VB我也记得是 Next i 而不是 End For 吧?

你觉得怎样才算【会】呢?

看得懂语法:Lisp、C、C++、Python、VB、Ruby
写得出简单程序:C、C++、Ruby(VB仅限高中会考等级所以不算)
写得出程序卖萌:Ruby

代码演示:
https://rpg.blue/thread-368425-1-1.html
https://rpg.blue/thread-368980-1-1.html
作者: H·H·Y    时间: 2014-7-30 14:24
我都会!…………加减乘除……
作者: taroxd    时间: 2014-7-30 14:31
余烬之中 发表于 2014-7-30 14:04
你没发现ruby有两项吗

我还会伪代码(这是只有笨蛋才能看到的神奇文字

RUBY 代码复制
  1. def int(_) end
  2. def main(&b)
  3.   Object.send(:define_method, :main, &b)
  4.   main
  5. end
  6. std = Module.new do
  7.   def self.cout; STDOUT; end
  8.   def self.endl; "\n"; end
  9. end
  10.  
  11.  
  12. #include <iostream>
  13. int main() {
  14.   std::cout << "Hello world!" << std::endl;
  15.   return 0;
  16. }

作者: taroxd    时间: 2014-7-30 14:38
@余烬之中  

Ruby 2.0 环境

RUBY 代码复制
  1. Array.instance_eval do
  2.   class Array
  3.     $array = self
  4.   end
  5. end
  6.  
  7. p $array.new # []

作者: 余烬之中    时间: 2014-7-30 14:40
本帖最后由 余烬之中 于 2014-7-30 14:59 编辑
taroxd 发表于 2014-7-30 14:38
@余烬之中  

Ruby 2.0 环境


1.9.3


已证实

作者: 无脑之人    时间: 2014-7-30 14:45
看见LS几个触手秀Tentacles什么的我就不想多说了【
果然LZ对代码的认识就是顶楼那几种?
作者: 迷糊的安安    时间: 2014-7-30 15:09
cls
clrscr();
clc
char clscode[] = {0x1B, 0x5B, 0x48, 0x1B, 0x5B, 0x4A};
clear
作者: 克莉丝    时间: 2014-7-30 15:30
本帖最后由 克莉丝 于 2014-7-30 15:53 编辑
  1. push    14h
  2. push    offset unk_4096B0
  3. call    __SEH_prolog4
  4. or      [ebp+var_20], 0FFFFFFFFh
  5. call    __getptd
  6. mov     edi, eax
  7. mov     [ebp+var_24], edi
  8. call    ___updatetmbcinfo
  9. mov     ebx, [edi+68h]
  10. mov     esi, [ebp+arg_0]
  11. call    ?getSystemCP@@YAHH@Z ; getSystemCP(int)
  12. mov     [ebp+arg_0], eax
  13. cmp     eax, [ebx+4]
  14. jz      loc_404E0E
复制代码
这样的东西好玩?
作者: myownroc    时间: 2014-7-30 15:32
楼主认识的语言种类也太少了吧
作者: awedcvgyujm    时间: 2014-7-30 15:59
大触人口普查帖_(:з」∠)_
作者: 江户川洛奇    时间: 2014-7-30 16:31
让渣渣都不好意思进来了
作者: kuerlulu    时间: 2014-7-30 16:36
渣渣不好意思进来了+1
能简单地写几个rmxp的脚本= =
因为做chm所以能简单地写几个htm的代码= =
作者: 艾尔露    时间: 2014-7-30 16:37
  1. //毫無反應只是C
  2. #include<stdio.h>
  3. void draw_1(int start_row,int end_row,int leading_space);
  4. void draw_base(int);

  5. int main()
  6. {
  7.         int row,col,star,space;
  8.         int top_size=5,mid_size=7,bottom_size=9;
  9.         draw_1(1,top_size,2*(mid_size-top_size));
  10.         draw_1(2,mid_size,bottom_size-mid_size);
  11.         draw_1(3,bottom_size,0);
  12.         draw_base(bottom_size);
  13.         return 0;
  14. }

  15. void draw_1(int start_row,int end_row,int leading_space)
  16. {
  17.         int row,col,star,space;
  18.         for(row=1;row<=end_row;row++)
  19.         {
  20.                 if (2*row>2*start_row-1)
  21.                 {
  22.                         for (col=1;col<=leading_space;col++)
  23.                         {
  24.                                 printf_s("%c",' ');
  25.                         }
  26.                         for(space=1;space<=end_row-row;space++)
  27.                                 printf_s("%c",' ');
  28.                         for(star=1;star<=2*row-1;star++)
  29.                                 printf_s("%c",'*');
  30.                         printf_s("%c",'\n');
  31.                 }
  32.         }
  33. }


  34. void draw_base(int b_size)
  35. {
  36.         int row,col,space,star;
  37.         for(row=1;row<=b_size/3;row++)
  38.         {
  39.                 for(space=1;space<=b_size/2;space++)
  40.                         printf_s("%c",' ');
  41.                 for(star=1;star<=b_size;star++)
  42.                         printf_s("%c",'*');
  43.                 printf_s("%c",'\n');
  44.         }
  45. }
复制代码


{:2_253:}
真正的小渣渣給各位觸手們跪了
嘛真的有學過的只有VB.NET,C和C++吧…
作者: kagamine_len    时间: 2014-7-30 17:11
一种都不会
作者: 876加几    时间: 2014-7-30 18:07
本帖最后由 876加几 于 2014-7-30 20:14 编辑

继续演示!!!
VB 代码复制
  1. Public Module Judge
  2.     Function Prime(ByVal x As Integer) As Boolean '判断一个数是否是质数
  3.         If x < 2 Then
  4.             Return False
  5.         Elseif x = 2 Then
  6.             Return True
  7.         Else
  8.             Dim i As Integer
  9.             For i = 2 To (x - 1)
  10.                 If x Mod i = 0 Then
  11.                     Return False
  12.                 End If
  13.             End For
  14.         End If
  15.         Return True
  16.     End Function
  17. End Module
  18. Class Demo
  19.     Sub New()
  20.         If Prime(17) Then
  21.             MsgBox("17是质数")
  22.         Else
  23.             MsgBox("17是合数")
  24.         End If
  25.         If Prime(16) Then
  26.             MsgBox("16是质数")
  27.         Else
  28.             MsgBox("16是合数")
  29.         End If
  30.         '运行结果:17是质数,16是合数
  31.     End Sub
  32. End Class
  33. '以上为VB.NET

RUBY 代码复制
  1. def 最大公因数(*num)
  2.   if num.size = 1
  3.     return num[0]
  4.   elsif num.size = 2
  5.     if num[0] % num[1] = 0
  6.       return num[1]
  7.     else
  8.       return 最大公因数(num[1], num[0] % num[1])
  9.     end
  10.   else
  11.     num2 = 最大公因数(num[0], num[1])
  12.     for i in 2...num.size
  13.       num2 = 最大公因数(num2, num[i])
  14.     end
  15.   end
  16. end
  17. p 最大公因数(60, 72, 40) #=>4

和……以前我写的的求和求积……
RUBY 代码复制
  1. def sum(min, max)
  2.   ary = []
  3.   for i in min..max
  4.     ary.push(yield(i))
  5.   end
  6.   num = 0
  7.   for n in ary
  8.     num += n
  9.   end
  10.   return num.truncate == num ? num.truncate : num rescue Nan
  11. end
  12. def multi(min, max)
  13.   ary = []
  14.   for i in min..max
  15.     ary.push(yield(i))
  16.   end
  17.   num = ary[0]
  18.   ary.shift
  19.   for n in ary
  20.     num *= n
  21.   end
  22.   return num.truncate == num ? num.truncate : num rescue Nan
  23. end
  24. p sum(1, 3) {i * 3} #=>18
  25. p sum(0, 4) {i / 2.0} #=>3(舍0)
  26. p multi(1, 3) {i * 2} #=>48

作者: gonglinyuan    时间: 2014-7-30 18:10
。。。这选项也太少了吧。。
Python、Java、Lisp、Pascal、Lua这些著名语言都被吃了?
既然有VB.NET这种微软黑科技,那么C#、F#这种也该算吧?(虽然我及其讨厌)
另外,像HTML、php等网页相关语言也没有吗?
作者: 克莉丝    时间: 2014-7-30 18:18
876加几 发表于 2014-7-30 18:07
继续演示!!!

Public Module Judge

帮我写个代码找出最大的质数,不谢
作者: taroxd    时间: 2014-7-30 18:23
本帖最后由 taroxd 于 2014-7-31 08:49 编辑
876加几 发表于 2014-7-30 18:07
继续演示!!!

Public Module Judge


看了楼主的代码,楼主完全不会 VB.net 和 Ruby。鉴定完毕。

RUBY 代码复制
  1. # 懒得 require 'prime' 了
  2. # 暂不考虑效率。想要效率去拿概率什么的算法去。
  3. def prime?(n)
  4.   n > 1 && (2..n / 2).all? {|i| n % i != 0 }
  5. end
  6.  
  7. [15, 16].each {|n| puts "#{n}是#{prime?(n) ? "" : ""}数" }
  8.  
  9. def 最大公约数(*nums)
  10.   nums.inject(:gcd)
  11. end
  12.  
  13. p 最大公约数(60, 72, 40) #=> 4



作者: 876加几    时间: 2014-7-30 20:23
本帖最后由 876加几 于 2014-7-30 20:25 编辑

昨天写的VB.NET:
VB 代码复制
  1. Public Class GameArray
  2.     '变量
  3.     Private ary(13, 13) As Integer
  4.     '调用
  5.     Public Sub New()
  6.         Make()
  7.     End Sub
  8.     '调用数据
  9.     Public ReadOnly Property Data() As Integer(,)
  10.         Get
  11.             Return ary
  12.         End Get
  13.     End Property
  14.     '制作
  15.     Sub Make()
  16.         Dim x, y As Integer
  17.         For x = 0 To 12
  18.             For y = 0 To 12
  19.                 If x = 6 And y = 6 Then
  20.                     ary(x, y) = 2
  21.                 ElseIf Int(Rnd() * 10) = 1 Then
  22.                     ary(x, y) = 1
  23.                 Else
  24.                     ary(x, y) = 0
  25.                 End If
  26.             Next
  27.         Next
  28.     End Sub
  29.  
  30.     '注释
  31.  
  32.     '可通行区域 = 0
  33.     '禁止通行区域 = 1
  34.     '老鼠 = 2
  35.  
  36.     '是否相邻判断
  37.     Function adjoin(ByVal x1 As Integer, ByVal y1 As Integer, ByVal x2 As Integer, ByVal y2 As Integer) As Boolean
  38.         If Not (Valid(x1, x2) = True And Valid(x2, y2) = True) Then
  39.             Throw New Exception("存在无效坐标。")
  40.         End If
  41.         If Math.Abs(x2 - x1) = 1 Or Math.Abs(y2 - y1) = 1 Then
  42.             Return True
  43.         End If
  44.         Dim num As Integer
  45.         num = y1 Mod 2
  46.         If num = 0 Then '奇数行靠左
  47.             If Math.Abs(y2 - y1) = 1 And x1 - x2 = 1 Then
  48.                 Return True
  49.             End If
  50.         Else '偶数行靠右
  51.             If Math.Abs(y2 - y1) = 1 And x2 - x1 = 1 Then
  52.                 Return True
  53.             End If
  54.         End If
  55.         Return False
  56.     End Function
  57.  
  58.     '相邻可通行区域
  59.     Function AdjoinAndPossable(ByVal x As Integer, ByVal y As Integer) As Integer()()
  60.         If Valid(x, y) = False Then
  61.             Throw New Exception("无效坐标。")
  62.         End If
  63.         Dim x1, y1 As Integer
  64.         Dim Coordinate As Integer()() = {}
  65.         Dim SelfAry(2) As Integer
  66.         For x1 = 0 To 12
  67.             For y1 = 0 To 12
  68.                 SelfAry(0) = x1
  69.                 SelfAry(1) = y1
  70.                 If adjoin(x, y, x1, y1) = True And Me.Data(x1, y1) = 1 = False Then
  71.                     ArrayAdd(Coordinate, SelfAry)
  72.                 End If
  73.             Next
  74.         Next
  75.         Return Coordinate
  76.     End Function
  77.  
  78.     '有效
  79.     Function Valid(ByVal x As Integer, ByVal y As Integer) As Boolean
  80.         Return (x >= 0 And x < 13 And y >= 0 And y < 13)
  81.     End Function
  82.  
  83.     '清除老鼠
  84.     Sub MoveMouse()
  85.         Dim x, y As Integer
  86.         For x = 0 To 12
  87.             For y = 0 To 12
  88.                 If ary(x, y) = 2 Then
  89.                     ary(x, y) = 0
  90.                     Exit Sub
  91.                 End If
  92.             Next
  93.         Next
  94.     End Sub
  95.  
  96.     '移动老鼠
  97.     Sub MoveMouse(ByVal x As Integer, ByVal y As Integer)
  98.         If Valid(x, y) = False Then
  99.             Throw New Exception("无效坐标。")
  100.         End If
  101.         Dim x1, y1 As Integer
  102.         For x1 = 0 To 12
  103.             For y1 = 0 To 12
  104.                 If ary(x1, y1) = 2 Then
  105.                     ary(x1, y1) = 0
  106.                 End If
  107.             Next
  108.         Next
  109.         ary(x, y) = 2
  110.     End Sub
  111.  
  112.     '添加障碍 (返回是否成功)
  113.     Function AddBlock(ByVal x As Integer, ByVal y As Integer) As Boolean
  114.         If Valid(x, y) = False Then
  115.             Throw New Exception("无效坐标。")
  116.         End If
  117.         Dim x1, y1 As Integer
  118.         Dim mouse(2) As Integer
  119.         For x1 = 0 To 12
  120.             For y1 = 0 To 12
  121.                 If ary(x1, y1) = 2 Then
  122.                     mouse(0) = x1
  123.                     mouse(1) = y1
  124.                 End If
  125.             Next
  126.         Next
  127.         If (mouse(0) = x And mouse(1) = y) Or (Data(x, y) = 1) Then
  128.             Return False
  129.         End If
  130.         ary(x, y) = 1
  131.         Return True
  132.     End Function
  133. End Class

以前写的Ruby:
RUBY 代码复制
  1. module Function
  2.   PI = 3.1415926535897932385
  3.   E = 2.7182818284590452354
  4.   BITS = 32
  5.   PHI = 1.6180339887498948482
  6.   TAU = 2 * PI
  7.   ABTS = 32
  8.   GAMMA = 0.5772156649015328606
  9.   C2 = 0.6601618158468695739
  10.   def gamma(x)
  11.     x = x.truncate == x ? x.truncate : x
  12.     if x.is_a?(Integer)
  13.       if x > 0
  14.         return fact(x)
  15.       else
  16.         raise ArgumentError.new("wrong number")
  17.       end
  18.     else
  19.       if x > 0
  20.         num = sqrt(2 * PI / x) * (1.0 / E * sqrt(x + 1.0 / (12 * x - 1.0 / (10 * x))))
  21.       else
  22.         num = gamma(1 - (n.abs - Integer(n.abs)))
  23.         for t in 1..Integer(n.abs) + 1
  24.           i = 1 - (n.abs - Integer(n.abs)) - t
  25.           num /= i
  26.         end
  27.       end
  28.     end
  29.     return num.truncate == num ? num.truncate : num rescue Infinity
  30.   end
  31.   def s_dec(x)
  32.     a = x.to_s.scan(/./)
  33.     dd = false
  34.     for s in 0...a.size
  35.       if dd
  36.         break
  37.       end
  38.       for c in 0...a.size
  39.         i = a[c]
  40.         if i == "."
  41.           a.shift
  42.           dd = true
  43.           break
  44.         else
  45.           a.shift
  46.           break
  47.         end
  48.       end
  49.     end
  50.     return a.to_s
  51.   end
  52.   def about(x, y)
  53.     num = Integer(x.abs)
  54.     ary = s_dec(x).scan(/./)
  55.     for i in 0...ary.size
  56.       ns = ary[i]
  57.       nt = ns.to_i
  58.       ntc = nt
  59.       ntc *= 10 ** (-i - 1)
  60.       if i < y and not i - y == -1
  61.         num += ntc
  62.       elsif i - y == -1
  63.         num += ntc
  64.         if ary[i + 1].to_i >= 5
  65.           num += 10 ** (-y)
  66.         end
  67.         break
  68.       else
  69.         break
  70.       end
  71.     end
  72.     if x < 0
  73.       num = -num
  74.     end
  75.     return num.truncate == num ? num.truncate : num
  76.   end
  77.   def fact(x)
  78.     x = x.truncate == x ? x.truncate : x
  79.     if x.is_a?(Integer)
  80.       if x < 0
  81.         raise ArgumentError.new("wrong number")
  82.       elsif x < 2
  83.         return 1
  84.       else
  85.         return x * fact(x - 1) rescue Infinity
  86.       end
  87.     else
  88.       return gamma(x + 1)
  89.     end
  90.   end
  91.   def sqrt(x)
  92.     if x < 0
  93.       raise ArgumentError.new("wrong number")
  94.     end
  95.     num = x ** 0.5
  96.     return num.truncate == num ? num.truncate : num
  97.   end
  98.   def sqr(x)
  99.     return x ** 2
  100.   end
  101.   def cube(x)
  102.     return x ** 3
  103.   end
  104.   def cuberoot(x)
  105.     if x < 0
  106.       return -cuberoot(-x)
  107.     end
  108.     num = x ** (1.0 / 3)
  109.     return num.truncate == num ? num.truncate : num
  110.   end
  111.   def root(x, y)
  112.     if (x.abs != self and y % 2 == 0) or y == 0
  113.       raise ArgumentError.new("wrong number")
  114.     end
  115.     if x.abs != x
  116.       num = (x * (-1)) ** (1.0 / y)
  117.       return num.truncate == num ? -num.truncate : -num
  118.     end
  119.     num = x ** (1.0 / y)
  120.     return num.truncate == num ? num.truncate : num
  121.   end
  122.   def sin(x)
  123.     while x < 0
  124.       x += TAU
  125.     end
  126.     x %= TAU
  127.     num = sum(0, BITS){|n| (-1) ** n * x ** (2 * n + 1) / fact(2 * n + 1).to_f}
  128.     num = about(num, ABTS)
  129.     return num.truncate == num ? num.truncate : num
  130.   end
  131.   def sind(x)
  132.     return sin(x * PI / 180.0)
  133.   end
  134.   def sing(x)
  135.     return sind(x * 0.9)
  136.   end
  137.   def cos(x)
  138.     num = sqrt((1 - sqr(sin(x))).abs)
  139.     if x % TAU >= PI
  140.       num = -num
  141.     end
  142.     return num.truncate == num ? num.truncate : num
  143.   end
  144.   def cosd(x)
  145.     return cos(x * PI / 180.0)
  146.   end
  147.   def cosg(x)
  148.     return cosd(x * 0.9)
  149.   end
  150.   def tan(x)
  151.     return sin(x) / cos(x)
  152.   end
  153.   def tand(x)
  154.     return sind(x) / cosd(x)
  155.   end
  156.   def tang(x)
  157.     return sing(x) / cosg(x)
  158.   end
  159.   def sum(min, max)
  160.     ary = []
  161.     for i in min..max
  162.       ary.push(yield(i))
  163.     end
  164.     num = 0
  165.     for n in ary
  166.       num += n
  167.     end
  168.     return num.truncate == num ? num.truncate : num rescue Nan
  169.   end
  170.   def multi(min, max)
  171.     ary = []
  172.     for i in min..max
  173.       ary.push(yield(i))
  174.     end
  175.     num = ary[0]
  176.     ary.shift
  177.     for n in ary
  178.       num *= n
  179.     end
  180.     return num.truncate == num ? num.truncate : num rescue Nan
  181.   end
  182.   def asin(x)
  183.     if x < -1 or x > 1
  184.       raise ArgumentError.new("wrong number")
  185.     end
  186.     num = 2 * atan(x / (1 + sqrt(1 - sqr(x))).to_f)
  187.     return num.truncate == num ? num.truncate : num
  188.   end
  189.   def acos(x)
  190.     num = PI / 2 - asin(x)
  191.     return num.truncate == num ? num.truncate : num
  192.   end
  193.   def atan(x)
  194.     num = x / (1 + sqr(x)).to_f * sum(0, BITS){|n| n == 0 ? 1 : multi(1, n){|k| 2 * k * sqr(x) / ((2 * k + 1) * (1 + sqr(x))).to_f}}
  195.     return num.truncate == num ? num.truncate : num
  196.   end
  197.   def asind(x)
  198.     num = asin(x) * 180 / PI
  199.     return num.truncate == num ? num.truncate : num
  200.   end
  201.   def acosd(x)
  202.     num = 90 - asind(x)
  203.     return num.truncate == num ? num.truncate : num
  204.   end
  205.   def atand(x)
  206.     num = atan(x) * 180 / PI
  207.     return num.truncate == num ? num.truncate : num
  208.   end
  209.   def erf(x)
  210.     num = 2.0 / sqrt(PI) * sum(0, BITS){|n| (-1) ** n * x ** (2 * n + 1) / fact(n) * (2 * n + 1)}
  211.     num = about(num, ABTS)
  212.     return num.truncate == num ? num.truncate : num
  213.   end
  214.   def erfc(x)
  215.     return 1 - erf(x)
  216.   end
  217.   def sgn(x)
  218.     return x <=> 0
  219.   end
  220.   def aerf(x)
  221.     num = sum(0, BITS){|g| erf_c(g) / (2 * g + 1).to_f * (sqrt(PI) / 2 * x) ** (2 * g + 1)}
  222.     return num.truncate == num ? num.truncate : num
  223.   end
  224.   def aerfc(x)
  225.     return aerf(1 - x)
  226.   end
  227.   def ln(x)
  228.     if x < 0
  229.       raise ArgumentError.new("wrong number")
  230.     end
  231.     y = (x - 1) / (x + 1)
  232.     num = 2 * y * (1 + sum(1, BITS){|n| 1.0 / (2 * n + 1) * y ** (2 * n)})
  233.     return num.truncate == num ? num.truncate : num
  234.   end
  235.   def lg(x)
  236.     if x < 0
  237.       raise ArgumentError.new("wrong number")
  238.     end
  239.     num = ln(x) / ln(10)
  240.     return num.truncate == num ? num.truncate : num
  241.   end
  242.   def log(x, y)
  243.     if x < 0 or (y <= 0 or y == 1)
  244.       raise ArgumentError.new("wrong number")
  245.     end
  246.     num = lg(y) / lg(x)
  247.     return num.truncate == num ? num.truncate : num
  248.   end
  249.   def sinh(x)
  250.     num = (E ** x - E ** (-x)) / 2
  251.     return num.truncate == num ? num.truncate : num
  252.   end
  253.   def cosh(x)
  254.     num = (E ** x + E ** (-x)) / 2
  255.     return num.truncate == num ? num.truncate : num
  256.   end
  257.   def tanh(x)
  258.     num = sinh(x) / cosh(x)
  259.     return num.truncate == num ? num.truncate : num
  260.   end
  261.   def asinh(x)
  262.     num = ln(x + sqrt(sqr(x) + 1))
  263.     return num.truncate == num ? num.truncate : num
  264.   end
  265.   def acosh(x)
  266.     num = ln(x + sqrt(sqr(x) - 1))
  267.     return num.truncate == num ? num.truncate : num
  268.   end
  269.   def atanh(x)
  270.     num = ln(sqrt(1 - sqr(x)) / (1 - x))
  271.     return num.truncate == num ? num.truncate : num
  272.   end
  273.   def beta(x, y)
  274.     num = (gamma(x) * gamma(y)) / gamma(x + y)
  275.     return num.truncate == num ? num.truncate : num
  276.   end
  277.   def dms(x)
  278.     ary = x.split(1, true)
  279.     na = [ary[0].to_s, ".", ""]
  280.     for i in ary[1]
  281.       str = (i * 60).to_s
  282.       na[2] += str
  283.     end
  284.     num = na.to_s.to_f
  285.     return num.truncate == num ? num.truncate : num
  286.   end
  287.   def Int(x)
  288.     return Integer(x)
  289.   end
  290.   def gen_e(x, y)
  291.     num = fact(x) / sqrt(PI) * sum(0, BITS){|p| (-1) ** p * ((y ** (x * p + 1)).to_f / ((x * p + 1) * fact(p)))}
  292.     return num.truncate == num ? num.truncate : num
  293.   end
  294.   def erf_c(x)
  295.     if x == 0
  296.       return 1
  297.     end
  298.     num = sum(0, x - 1){|m| erf_c(m) * erf_c(x - 1 - m) / ((m + 1) * (2 * m + 1)).to_f}
  299.     return num.truncate == num ? num.truncate : num
  300.   end
  301.   def Frac(x)
  302.     num = x - Int(x)
  303.     return num.truncate == num ? num.truncate : num
  304.   end
  305.   def adms(x)
  306.     ary = x.split(2, true)
  307.     na = [ary[0].to_s, ".", ""]
  308.     for i in ary[1]
  309.       if i > 60
  310.         raise ArgumentError.new("wrong number")
  311.       end
  312.       n = i / 6 / 10
  313.       na.push(n)
  314.     end
  315.     num = na.to_s.to_f
  316.     return num.truncate == num ? num.truncate : num
  317.   end
  318.   def atan2(y, x)
  319.     num = atan(y) / atan(x)
  320.     return num.truncate == num ? num.truncate : num
  321.   end
  322.   def atand2(y, x)
  323.     num = atand(y) / atand(x)
  324.     return num.truncate == num ? num.truncate : num
  325.   end
  326. end
  327.  
  328. class Object
  329.   include Function
  330. end
(未包括number.split,本来写过的此方法)
作者: taroxd    时间: 2014-7-30 20:25
876加几 发表于 2014-7-30 20:23
昨天写的VB.NET:

Public Class GameArray

那你 nums.size 的 size 方法是哪来的?你能用 size 为什么我不能用 inject?

求和的代码在此,我卖萌都写得比你好:https://rpg.blue/thread-368425-1-1.html

看了一这一层的代码,你不会这些语言无误
作者: PAME    时间: 2014-7-30 21:00
这个也太不全了点吧.....那么多编程语言orz
作者: myownroc    时间: 2014-7-30 21:31
本帖最后由 myownroc 于 2014-7-30 21:39 编辑

楼主来个大数(几十位的数字,用字符串表示)相乘呗~语言无所谓啦~反正都看得懂
作者: 恐惧剑刃    时间: 2014-7-30 21:40
会的意思?是精通么??
这样的话  我不会rgss更不会Ruby

如果会的意思,是学习过或者了解过
那么,我只会一点点rgss1
不客气的说,rgss1的很多东西我都是不会的。
新手可能觉得我是高手,但事实上我水平到底如何大家都懂,只是些雕虫小技而已。


另外 rgss 不等于 Ruby !!

综上——我什么代码也不会。。

作者: yagami    时间: 2014-7-31 00:00
  1. #include <iostream>
  2. #define 喵 {
  3. #define 呜 }
  4. #define 喵呜 <<
  5. #define 喵喵 using namespace std;
  6. #define 呜呜 cout
  7. #define 呜喵 endl
  8. #define 喵喵呜 ;
  9. #define 喵呜喵 int
  10. #define 呜呜喵 cout
  11. #define 呜喵呜 main()

  12. 喵喵 喵呜喵 呜喵呜 喵 呜呜 喵呜 "我种下一颗种子" 喵呜 呜喵 喵喵呜 呜呜 喵呜 "终于长出了果实" 喵呜 呜喵 喵喵呜 呜呜 喵呜 "今天是个伟大日子" 喵呜 呜喵 喵喵呜 呜
复制代码

作者: gonglinyuan    时间: 2014-7-31 08:09
876加几 发表于 2014-7-30 18:07
继续演示!!!

Public Module Judge


C的最大公因数(只支持两个数,但仅有一行)
  1. int gcd(int a,int b) {return b?gcd(b,a%b):a;}
复制代码

作者: gonglinyuan    时间: 2014-7-31 08:26
本帖最后由 gonglinyuan 于 2014-7-31 08:29 编辑
876加几 发表于 2014-7-30 18:07
继续演示!!!

Public Module Judge


检测一个数是否是质数(Miller_Rabin+二次探测定理)(理论复杂度O(log N),18位十进制整数也秒出解)
  1. long long mul(long long a,long long b,long long n)
  2. {
  3.     long long ret=0;
  4.     while (b)
  5.     {
  6.         if (b&1) ret=(ret+a)%n;
  7.         a=(a+a)%n; b>>=1;
  8.     }
  9.     return ret;
  10. }  // 快速乘

  11. long long exp(long long a,long long b,long long n)
  12. {
  13.     long long ret=1;
  14.     while (b)
  15.     {
  16.         if (b&1) ret=mul(ret,a,n);
  17.         a=mul(a,a,n); b>>=1;
  18.     }
  19.     return ret;
  20. }  // 快速幂

  21. bool miller_rabin(long long n)
  22. {
  23.     if(n==2||n==3||n==5||n==7||n==11) return true;
  24.     if(n==1||!(n%2)||!(n%3)||!(n%5)||!(n%7)||!(n%11)) return false;
  25.     long long x,pre,u;
  26.     int i,j,k=0;
  27.     u=n-1;
  28.     while(!(u&1)) {k++; u>>=1;}
  29.     srand((long long)time(0));
  30.     for (i=0;i<S;++i)  // S是测试次数,越大正确率越高,一般大于5之后就基本全对
  31.     {
  32.         x=rand()%(n-2)+2;
  33.         if(!(x%n)) continue;
  34.         x=exp(x,u,n);
  35.         pre=x;
  36.         for (j=0;j<k;++j)
  37.         {
  38.             x=mul(x,x,n);
  39.             if (x==1&&pre!=1&&pre!=n-1) return false; //二次探测定理
  40.             pre=x;
  41.         }
  42.         if (x!=1) return false; //费马小定理
  43.     }
  44.     return true;
  45. }
复制代码

作者: delv26    时间: 2014-7-31 08:39
Python死(虽然我写过几个MCE滤器
Ruby活(?
VB.NET好吃但属于MS……
剩下的就是些HTMLCSSJavascriptJavaPHP和讨厌的Pascal(语言本身挺好只是被拿去干某些事情非常不爽
还有易语言(
作者: 876加几    时间: 2014-7-31 09:06
说实话,我被@taroxd 吓了一跳,但是我还会……做路
作者: taroxd    时间: 2014-7-31 09:11
876加几 发表于 2014-7-31 09:06
说实话,我被@taroxd 吓了一跳,但是我还会……做路

我只是新手而已,说实话一种代码都没有精通

周围的大触多了去了
作者: 我是大仙    时间: 2014-7-31 11:38
我会AGM(←这个不算)
和一丢丢易语言
作者: 弗雷德    时间: 2014-7-31 12:03
本帖最后由 弗雷德 于 2014-7-31 12:07 编辑

俺会RGSS,俺不会数学
俺会画立绘CG,俺更擅长像素画   
俺会3DSMAX,俺不会MAYA
俺会ZBRUSH,俺更精通骨骼动作{:4_117:}
俺会喝酒,但是俺抽烟更牛X

美工来打酱油{:4_117:}

但是俺更擅长当老板{:4_117:}
作者: zeldafd    时间: 2014-7-31 12:32
現在我PHP能寫MVC框架, JAVA能在ANDROID寫遊戲引擎和軟件, RUBY現在也能寫點腳本, C++用來在CRYENGINE改框架

作者: 菜鸟飞呀飞    时间: 2014-8-2 09:21
提示: 作者被禁止或删除 内容自动屏蔽
作者: taroxd    时间: 2014-8-2 12:28
本帖最后由 taroxd 于 2014-8-2 12:31 编辑
菜鸟飞呀飞 发表于 2014-8-2 09:21
会抽烟喝酒打牌,特长吃,爱好吃
别人不知道你知道的,只是别人学了你不知道他知道的
人的知识都是学来的, ...


知识不一定要实用,学习知识的过程本身也是一种享受

我也享受写代码,玩RM的过程。

个人理解,不喜勿喷
作者: 菜鸟飞呀飞    时间: 2014-8-2 21:47
提示: 作者被禁止或删除 内容自动屏蔽
作者: 刺夜之枪    时间: 2014-8-2 21:49
JAVA学校学  RUBY 自学刚学  C++学校学
作者: 君虫丶    时间: 2014-8-3 13:40
首先,要有电脑
作者: 寒冷魔王    时间: 2014-8-3 17:44
ActionScript2.0
作者: 寒冷魔王    时间: 2014-8-3 17:47
不知有没有会Java的
作者: 月下の戰鬼    时间: 2014-8-3 18:39
{:2_276:}我只知道小电影的神秘代码。。。
{:2_252:}
作者: ali    时间: 2014-8-4 13:59
哎呦 我说出来都会吓死你 我会Minecraft OP代码...正在学C语言




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1