Может кто-нибудь помочь мне перевести этот код с C ++ на Java?У меня нет знаний по C ++.
EDIT2: Спасибо за ответы, ребята, я скоро найду время выучить C ++.Мне просто нужна была помощь в переводе вещей.Вот мой законченный перевод.Я получаю ошибки для всех имен методов numberToBarcode ().Могли бы вы, ребята, проверить этот код, чтобы я мог убедиться в правильности перевода?
Мой код:
import java.util.Scanner;
public class zipBar {
public static int numberToBarcode(int arg0)
{
return arg0;
}
public static void main(String[] args) {
int z;
int num1, num2, num3, num4, num5, checkNum;
int tempNum;
int checkTotal;
String barcode = "|";
System.out.println("Enter zip code: ");
Scanner zip = new Scanner(System.in);
z = zip.nextInt();
if (z >= 10000 || z < 0)
{
System.out.println("Input Error: Input not a valid zip code");
}
tempNum = z;
num5 = tempNum % 10;
tempNum = tempNum / 10;
num4 = tempNum % 10;
tempNum = tempNum / 10;
num3 = tempNum % 10;
tempNum = tempNum / 10;
num2 = tempNum % 10;
tempNum = tempNum / 10;
num1 = tempNum % 10;
tempNum = tempNum / 10;
checkTotal = num1 + num2 + num3 + num4 + num5;
checkNum = (10-(checkTotal % 10)) % 10;
barcode += numberToBarcode(num1);
barcode += numberToBarcode(num2);
barcode += numberToBarcode(num3);
barcode += numberToBarcode(num4);
barcode += numberToBarcode(num5);
barcode += numberToBarcode(checkNum);
barcode += "|";
System.out.println("Your zip code's barcode is: " + barcode);
//return 0;
}
public static void String numberToBarcode(int num){
String barcode = " ";
int dig;
int tempNum;
int bcTotal = 0;
tempNum = num;
if (tempNum >= 10){
dig = tempNum % 10;
tempNum /= 10;
barcode = numberToBarcode(tempNum);
}
else{
dig = tempNum;
}
tempNum = dig;
if (dig == 0) {
barcode += "||:::";
}
else{
if (tempNum / 7 == 1 && bcTotal < 2){
barcode += "|";
tempNum -= 7;
bcTotal++;
}
else
barcode += ":";
if (tempNum / 4 == 1 && bcTotal < 2) {
barcode += "|";
tempNum -= 4;
bcTotal++;
} else
barcode += ":";
if (tempNum / 2 == 1 && bcTotal < 2) {
barcode += "|";
tempNum -= 2;
bcTotal++;
} else
barcode += ":";
if (tempNum / 1 == 1 && bcTotal < 2) {
barcode += "|";
tempNum -= 1;
bcTotal++;
} else
barcode += ":";
if (bcTotal < 2) {
barcode += "|";
bcTotal++;
} else
barcode += ":";
}
return barcode;
}
}
C ++ Код:
string numberToBarcode(int);
int main() {
int zip;
int num1, num2, num3, num4, num5, checkNum;
int tempNum;
int checkTotal;
string barcode = "|";
cout << "Please enter a 5 digit zip code.\n"
<< " --> ";
cin >> zip;
if (zip >= 100000 || zip < 0) {
cout << "Error: Not a zip code.\n";
return 0;
}
tempNum = zip;
num5 = tempNum % 10;
tempNum = tempNum / 10;
num4 = tempNum % 10;
tempNum = tempNum / 10;
num3 = tempNum % 10;
tempNum = tempNum / 10;
num2 = tempNum % 10;
tempNum = tempNum / 10;
num1 = tempNum % 10;
tempNum = tempNum / 10;
checkTotal = num1 + num2 + num3 + num4 + num5;
checkNum = (10-(checkTotal % 10))%10;
barcode += numberToBarcode(num1);