кодесурса

Упражнения на Java: если даны два неотрицательных целых числа, представленных в виде строки, вернуть их сумму

script1adsense2code
script1adsense3code

Java Basic: упражнение 189 с решением

Напишите Java-программу для заданных двух неотрицательных целых чисел num1 и num2, представленных в виде строки, верните сумму num1 и num2.

Иллюстрированная презентация:


Пример решения:

Java-код:

import java.util.*;
public class Solution {
 public static void main(String[] args) {
  String n1 ="123";
  String n2 ="456";
  System.out.println("'" + n1 + "'" + " + " + "'" + n2 + "'" + " =" + addStrings(n1, n2));
 }
 public static String addStrings(String n1, String n2) {
  int[] x = str_num(n1);
  int[] y = str_num(n2);
  int[] sum = new int[Math.max(x.length, y.length) + 1];
  int z = 0;
  int index = sum.length - 1;
  int i = 0;
  int j = 0;
  while (index >= 0) {
   if (i < x.length) {
    z += x[i++];
   }
   if (j < y.length) {
    z += y[j++];
   }
   sum[index--] = z % 10;
   z /= 10;
  }
  StringBuilder sb = new StringBuilder(sum.length);
  for (i = (sum[0] == 0 ? 1 : 0); i < sum.length; ++i) {
   sb.append(sum[i]);
  }
  return sb.toString();
 }
 private static int[] str_num(String num) {
  char[] digits = num.toCharArray();
  int[] number = new int[digits.length];
  int index = number.length - 1;
  for (char digit: digits) {
   number[index--] = digit - '0';
  }
  return number;
 }
}

Пример вывода:

 «123» + «456» = 579

Блок - схема:

«Блок-схема:

Редактор кода Java:

Компания: Google Airbnb

Внесите свой код и комментарии через Disqus.

Предыдущий: Напишите программу на Java, чтобы найти все начальные индексы анаграмм данной строки в другой данной строке.
Далее: Напишите программу на Java, чтобы найти недостающую строку из двух заданных строк.

Каков уровень сложности этого упражнения?

Новый контент: Composer: менеджер зависимостей для PHP , R программирования


script1adsense4code
script1adsense5code
disqus2code
script1adsense6code
script1adsense7code
script1adsense8code
buysellads2code