L
Louis
Условия задачи:
Ввести n строк с консоли, найти самую короткую и самую длинную строки. Вывести строки и их длину.
Мое решение:
[codebox]public class Multiplicator {
static int min=ArrayCreator.array[0].length();
static int max=0;
static int nom;
static int nom1;
static void setMax(){
for(int i=0; i<=ArrayCreator.array.length-1; i++){
if(ArrayCreator.array.length() >= max){
max = ArrayCreator.array.length();
nom=i;
}
}
}
static void setMin(){
for (int i=0; i<=ArrayCreator.array.length-1; i++){
if(ArrayCreator.array.length() <= min){
min=ArrayCreator.array.length();
nom1=i;
}
}
}
static int getMax(){
return max;
}
static int getNom(){
return nom;
}
static int getMin(){
return min;
}
static int getNom1(){
return nom1;
}
}[/codebox]
[codebox]import java.io.*;
public class Main {
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
BufferedReader in = new BufferedReader (new InputStreamReader (System.in));
try{
System.out.println("Vvedite n");
String str = in.readLine();
Integer value = new Integer(str).intValue();
Nnn.setN(value);
}catch (IOException e){System.err.println("error "+e);}
for(int i=0; i<=Nnn.n-1; i++){
BufferedReader in1 = new BufferedReader (new InputStreamReader (System.in));
try{
System.out.println("Vvedite stroky ");
String str = in.readLine();
ArrayCreator.setElement(str,i);
}catch (IOException e){System.err.println("error "+e);}
}
System.out.println("\n");
System.out.println("\n");
for (int i=0; i<=ArrayCreator.array.length-1; i++){
System.out.println(ArrayCreator.array);
}
System.out.println("\n");
Multiplicator.setMax();
Multiplicator.setMin();
System.out.println(Multiplicator.max+" stroka = "+ArrayCreator.array[Multiplicator.nom]);
System.out.println(Multiplicator.min+" stroka = "+ArrayCreator.array[Multiplicator.nom1]);
}
}[/codebox]
все работает задача решается!
Поскольку я только начал изучать Java меня интересуеть мнение более опытных программеров - Что не так.. Что можно было сделать лучше... (Создание классов, методов и пр.)
Очень нужна Ваша оценка.
Ввести n строк с консоли, найти самую короткую и самую длинную строки. Вывести строки и их длину.
Мое решение:
Код:
import java.io.*;
public class Nnn {
static int n;
public static void setN(int value){
n=value;
}
public int getN(){
return n;
}
}
Код:
public class ArrayCreator {
static String array [] = new String [Nnn.n];
public static void setElement(String value, int i){
array[i]=value;
}
public String getElement(int i){
return array[i];
}
}
[codebox]public class Multiplicator {
static int min=ArrayCreator.array[0].length();
static int max=0;
static int nom;
static int nom1;
static void setMax(){
for(int i=0; i<=ArrayCreator.array.length-1; i++){
if(ArrayCreator.array.length() >= max){
max = ArrayCreator.array.length();
nom=i;
}
}
}
static void setMin(){
for (int i=0; i<=ArrayCreator.array.length-1; i++){
if(ArrayCreator.array.length() <= min){
min=ArrayCreator.array.length();
nom1=i;
}
}
}
static int getMax(){
return max;
}
static int getNom(){
return nom;
}
static int getMin(){
return min;
}
static int getNom1(){
return nom1;
}
}[/codebox]
[codebox]import java.io.*;
public class Main {
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
BufferedReader in = new BufferedReader (new InputStreamReader (System.in));
try{
System.out.println("Vvedite n");
String str = in.readLine();
Integer value = new Integer(str).intValue();
Nnn.setN(value);
}catch (IOException e){System.err.println("error "+e);}
for(int i=0; i<=Nnn.n-1; i++){
BufferedReader in1 = new BufferedReader (new InputStreamReader (System.in));
try{
System.out.println("Vvedite stroky ");
String str = in.readLine();
ArrayCreator.setElement(str,i);
}catch (IOException e){System.err.println("error "+e);}
}
System.out.println("\n");
System.out.println("\n");
for (int i=0; i<=ArrayCreator.array.length-1; i++){
System.out.println(ArrayCreator.array);
}
System.out.println("\n");
Multiplicator.setMax();
Multiplicator.setMin();
System.out.println(Multiplicator.max+" stroka = "+ArrayCreator.array[Multiplicator.nom]);
System.out.println(Multiplicator.min+" stroka = "+ArrayCreator.array[Multiplicator.nom1]);
}
}[/codebox]
все работает задача решается!
Поскольку я только начал изучать Java меня интересуеть мнение более опытных программеров - Что не так.. Что можно было сделать лучше... (Создание классов, методов и пр.)
Очень нужна Ваша оценка.