您好,登錄后才能下訂單哦!
Ruby可以用 length ,size 這些關鍵字獲得數組的大小
這里Ruby ,python, JAVA 都使用了類的方法
有靜態方法,也有動態方法
首先是Ruby
#!/usr/bin/ruby class Pro def initialize(example) @current_num = example end def get_d arr = Array.new(@current_num){|e| e = e * 1 } tmp = 1 for i in 0 .. arr.length-1 if arr[i] - tmp > 4 puts "#{arr[i]}" tmp = arr[i] end end end def self.put_Each() sum = 0 for i in 0 .. 10 puts i sum += i end puts sum end end Obj1 = Pro.new(17) Obj1.get_d Pro.put_Each
然后是Python, 在#分割線之后的用的是單獨的遞歸函數
#!/usr/bin/python # -*- coding: UTF-8 -*- class Pro: def __init__(self, example): self.current_num = example def get_d(self): arr = list(range(0, self.current_num)) tmp = 1 for i in arr: if i - tmp > 4: print i tmp = i Obj1 = Pro(17) Obj1.get_d() ################################################# def get_distance(A): for i in A[1:]: if i - A[0] > 4: t = A.index(i) print i return get_distance(A[t:]) a = list(range(1, 17)) get_distance(a)
然后是C
#include "stdio.h" int main(void) { int i, arr[16]; int tmp = 1; for(i = 0; i < 16; i++){ arr[i] = i + 1; } for(i = 0; i < 16; i++){ if(arr[i] - tmp > 4 ){ printf("%d\n", arr[i]); tmp = arr[i]; } } return 0; }
接下來是 C++
#include<iostream> using namespace std; void get_d(int arr[], int n){ int i, *p = arr; int tmp = 1; for (p=arr; p<arr+16; p++){ if(*p - tmp > n){ cout << *p << endl; tmp = *p; } } } int main(){ void get_d(int arr[], int n); int a[16],*p=a,i; for(i=0;i<16;i++){ p[i] = i+1; } get_d(a, 4); return 0; }
最后是Java
class Pro { public void get_d(int example) { int[] arr = new int[example]; int tmp = 1; for (int i = 0; i < example; i++) { arr[i] = i + 1; } for (int i = 0; i < arr.length; i++){ if (arr[i] - tmp > 4) { System.out.println(arr[i]); tmp = arr[i]; } } } } public class Test{ public static void main(String[] args){ Pro Obj1 = new Pro(); Obj1.get_d(16); } }
JAVA 給原始數組賦值的語句直接寫在 Pro 類的 get_d方法中了。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。