Não sei o que era mais difícil
suportar a professora de matemática,
ou decorar estes números em ordinais.
Ela me dava umas broncas e saia rindo
da bagunça que eu escrevia no caderno.
A megera ainda fazia questão de lançar
isto nos dias de provas, bimestrais.
Mas mesmo assim ainda sinto saudades
destes tempos, pena que não voltará
nunca mais.
Nunca imaginei que no futuro criaria
um programinha para resolver estas
questões tão simples hoje e que me
torturava tanto no passado.
Compile meu programa, e se você já está
num nível mais avançado fique a vontade
para expandir, modificar e editar de
acordo com seus conhecimentos.
Veja abaixo uma imagem do programa em execução:
Veja abaixo o código do programa:
suportar a professora de matemática,
ou decorar estes números em ordinais.
Ela me dava umas broncas e saia rindo
da bagunça que eu escrevia no caderno.
A megera ainda fazia questão de lançar
isto nos dias de provas, bimestrais.
Mas mesmo assim ainda sinto saudades
destes tempos, pena que não voltará
nunca mais.
Nunca imaginei que no futuro criaria
um programinha para resolver estas
questões tão simples hoje e que me
torturava tanto no passado.
Compile meu programa, e se você já está
num nível mais avançado fique a vontade
para expandir, modificar e editar de
acordo com seus conhecimentos.
Veja abaixo uma imagem do programa em execução:
Veja abaixo o código do programa:
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.canvas.Canvas;
import javafx.scene.canvas.GraphicsContext;
import javafx.scene.paint.Color;
import javafx.scene.text.Font;
import javafx.scene.text.FontWeight;
import javafx.stage.Stage;
import javafx.scene.input.KeyCode;
import javafx.scene.layout.Pane;
import javafx.event.EventHandler;
import javafx.scene.control.TextField;
import javafx.geometry.Insets;
import javafx.scene.layout.HBox;
import javafx.scene.input.KeyEvent;
import java.util.function.UnaryOperator;
import javafx.scene.control.TextFormatter;
import javafx.scene.control.TextFormatter.Change;
public class PROJETO extends Application {
static StringBuilder Card = new StringBuilder ( );
static Pane root = new Pane ( );
static Canvas canvas = new Canvas ( 620, 350 );
static GraphicsContext ctx = canvas.getGraphicsContext2D
( );
static Scene scene = new Scene ( root, 620, 350, Color.WHITE );
static TextField textField_1 = new TextField ( );
static HBox hbox_1 = new HBox ( textField_1 );
public static int n = 0, un, de, ce, mi;
////////////////////////////////////////////////////////////////////////////
public static void Informe ( ) {
ctx.setFont ( Font.font ( "Arial", FontWeight.NORMAL, 13 ) );
ctx.setFill ( Color.RED );
ctx.fillText ( "Por: ", 250, 305 );
ctx.setFill ( Color.BLUE );
ctx.fillText ( "Samuel
Lima", 280, 305 );
ctx.setFill ( Color.BLACK );
ctx.fillText ( "sa_sp10@hotmail.com", 250, 320 );
}
//
/////////////////////////////////////////////////////////////////////////
public static void FuncUnidade ( ) {
if ( un == 1 ) {
Card.append ( "Primeiro" );
ctx.fillText ( " " + Card, 180, 250 );
}
if ( un == 2 ) {
Card.append ( "Segundo" );
ctx.fillText ( " " + Card, 180, 250 );
}
if ( un == 3 ) {
Card.append ( "Terceiro" );
ctx.fillText ( " " + Card, 180, 250 );
}
if ( un == 4 ) {
Card.append ( "Quarto" );
ctx.fillText ( " " + Card, 180, 250 );
}
if ( un == 5 ) {
Card.append ( "Quinto" );
ctx.fillText ( " " + Card, 180, 250 );
}
if ( un == 6 ) {
Card.append ( "Sexto" );
ctx.fillText ( " " + Card, 180, 250 );
}
if ( un == 7 ) {
Card.append ( "Sétimo" );
ctx.fillText ( " " + Card, 180, 250 );
}
if ( un == 8 ) {
Card.append ( "Oitavo" );
ctx.fillText ( " " + Card, 180, 250 );
}
if ( un == 9 ) {
Card.append ( "Nono" );
ctx.fillText ( " " + Card, 180, 250 );
}
}
///////////////////////////////////////////////////////////////////////////
public static void Cardinais ( String args ) {
ctx.setFont ( Font.font ( "Arial", FontWeight.NORMAL, 15 ) );
// Coluna, linha, comprimento, altura
ctx.clearRect ( 170, 70, 400, 250 );
Card = new StringBuilder ( );
mi = ( n / 1000 );
//separa centenas
ce = ( ( n - ( mi * 1000 ) ) / 100 );
//separa dezenas
de = ( ( n - ( ( mi * 1000 ) + ( ce * 100 ) ) ) / 10 );
//separa unidades
un = ( n - ( ( mi * 1000 ) + ( ce * 100 ) + ( de * 10 ) ) );
ctx.setFill ( Color.BLUE );
ctx.fillText ( "Voce digitou:
", 180, 80 );
ctx.setFill ( Color.RED );
ctx.fillText ( mi + " " + ce + " " + de + " " + un + "" + "º", 270, 80 );
ctx.setFill ( Color.BLUE );
ctx.fillText ( "Separando por
grupo temos: ", 180, 110 );
mi = mi * 1000;
ce = ce * 100;
de = de * 10;
un = un * 1;
ctx.setFill ( Color.BLUE );
ctx.fillText ( "Milhar", 180, 140 );
ctx.setFill ( Color.RED );
ctx.fillText ( mi / 1000 + " ", 260, 140 );
ctx.setFill ( Color.BLUE );
ctx.fillText ( "Centenas", 180, 160 );
ctx.setFill ( Color.RED );
ctx.fillText ( ce / 100 + " ", 260, 160 );
ctx.setFill ( Color.BLUE );
ctx.fillText ( "Dezenas", 180, 180 );
ctx.setFill ( Color.RED );
ctx.fillText ( de / 10 + " ", 260, 180 );
ctx.setFill ( Color.BLUE );
ctx.fillText ( "Unidades", 180, 200 );
ctx.setFill ( Color.RED );
ctx.fillText ( un / 1 + " ", 260, 200 );
ctx.setFill ( Color.BLUE );
ctx.fillText ( "Em ordinal:
", 180, 230 );
Informe ( );
ctx.setFont ( Font.font ( "Arial", FontWeight.NORMAL, 16 ) );
ctx.setFill ( Color.BLACK );
if ( mi == 9000 ) {
if ( ce == 0 && de == 0 && un == 0 ) {
Card.append ( "Nono Milésimo" );
ctx.fillText ( " " + Card, 180, 250 );
} else {
Card.append ( "Nono Milésimo
" );
ctx.fillText ( " " + Card, 180, 250 );
}
}
if ( mi == 8000 ) {
if ( ce == 0 && de == 0 && un == 0 ) {
Card.append ( "Oitavo Milésimo" );
ctx.fillText ( " " + Card, 180, 250 );
} else {
Card.append ( "Oitavo Milésimo
" );
ctx.fillText ( " " + Card, 180, 250 );
}
}
if ( mi == 7000 ) {
if ( ce == 0 && de == 0 && un == 0 ) {
Card.append ( "Sétimo Milésimo" );
ctx.fillText ( " " + Card, 180, 250 );
} else {
Card.append ( "Sétimo Milésimo
" );
ctx.fillText ( " " + Card, 180, 250 );
}
}
if ( mi == 6000 ) {
if ( ce == 0 && de == 0 && un == 0 ) {
Card.append ( "Sexto Milésimo" );
ctx.fillText ( " " + Card, 180, 250 );
} else {
Card.append ( "Sexto Milésimo
" );
ctx.fillText ( " " + Card, 180, 250 );
}
}
if ( mi == 5000 ) {
if ( ce == 0 && de == 0 && un == 0 ) {
Card.append ( "Quinto Milésimo" );
ctx.fillText ( " " + Card, 180, 250 );
} else {
Card.append ( "Quinto Milésimo
" );
ctx.fillText ( " " + Card, 180, 250 );
}
}
if ( mi == 4000 ) {
if ( ce == 0 && de == 0 && un == 0 ) {
Card.append ( "Quarto Milésimo" );
ctx.fillText ( " " + Card, 180, 250 );
} else {
Card.append ( "Quarto Milésimo
" );
ctx.fillText ( " " + Card, 180, 250 );
}
}
if ( mi == 3000 ) {
if ( ce == 0 && de == 0 && un == 0 ) {
Card.append ( "Terceiro Milésimo" );
ctx.fillText ( " " + Card, 180, 250 );
} else {
Card.append ( "Terceiro Milésimo
" );
ctx.fillText ( " " + Card, 180, 250 );
}
}
if ( mi == 2000 ) {
if ( ce == 0 && de == 0 && un == 0 ) {
Card.append ( "Segundo Milésimo" );
ctx.fillText ( " " + Card, 180, 250 );
} else {
Card.append ( "Segundo Milésimo
" );
ctx.fillText ( " " + Card, 180, 250 );
}
}
if ( mi == 1000 ) {
if ( ce == 0 && de == 0 && un == 0 ) {
Card.append ( "Milésimo" );
ctx.fillText ( " " + Card, 180, 250 );
} else {
Card.append ( "Milésimo
" );
ctx.fillText ( " " + Card, 180, 250 );
}
}
if ( ce == 900 ) {
if ( de == 0 && un == 0 ) {
Card.append ( "Nongentésimo" );
ctx.fillText ( " " + Card, 180, 250 );
} else
Card.append ( "Nongentésimo
" );
ctx.fillText ( " " + Card, 180, 250 );
}
if ( ce == 800 ) {
if ( de == 0 && un == 0 ) {
Card.append ( "Octingentésimo" );
ctx.fillText ( " " + Card, 180, 250 );
} else
Card.append ( "Octingentésimo
" );
ctx.fillText ( " " + Card, 180, 250 );
}
if ( ce == 700 ) {
if ( de == 0 && un == 0 ) {
Card.append ( "Septingentésimo" );
ctx.fillText ( " " + Card, 180, 250 );
} else
Card.append ( "Septingentésimo
" );
ctx.fillText ( " " + Card, 180, 250 );
}
if ( ce == 600 ) {
if ( de == 0 && un == 0 ) {
Card.append ( "Seiscentésimo" );
ctx.fillText ( " " + Card, 180, 250 );
} else
Card.append ( "Seiscentésimo
" );
ctx.fillText ( " " + Card, 180, 250 );
}
if ( ce == 500 ) {
if ( de == 0 && un == 0 ) {
Card.append ( "Quingentésimo" );
ctx.fillText ( " " + Card, 180, 250 );
} else
Card.append ( "Quingentésimo
" );
ctx.fillText ( " " + Card, 180, 250 );
}
if ( ce == 400 ) {
if ( de == 0 && un == 0 ) {
Card.append ( "Quadringentésimo" );
ctx.fillText ( " " + Card, 180, 250 );
} else
Card.append ( "Quadringentésimo
" );
ctx.fillText ( " " + Card, 180, 250 );
}
if ( ce == 300 ) {
if ( de == 0 && un == 0 ) {
Card.append ( "Tricentésimo" );
ctx.fillText ( " " + Card, 180, 250 );
} else
Card.append ( "Tricentésimo
" );
ctx.fillText ( " " + Card, 180, 250 );
}
if ( ce == 200 ) {
if ( de == 0 && un == 0 ) {
Card.append ( "Ducentésimo" );
ctx.fillText ( " " + Card, 180, 250 );
} else
Card.append ( "Ducentésimo
" );
ctx.fillText ( " " + Card, 180, 250 );
}
if ( ce == 100 ) {
if ( de == 0 && un == 0 ) {
Card.append ( "Centésimo" );
ctx.fillText ( " " + Card, 180, 250 );
} else
Card.append ( "Centésimo
" );
ctx.fillText ( " " + Card, 180, 250 );
}
if ( de == 20 ) {
if ( de == 0 || un == 0 ) {
Card.append ( "Vigésimo" );
ctx.fillText ( " " + Card, 180, 250 );
} else
Card.append ( "Vigésimo
" );
ctx.fillText ( " " + Card, 180, 250 );
FuncUnidade ( );
main ( args );
}
if ( de == 30 ) {
if ( de == 0 || un == 0 ) {
Card.append ( "Trigésimo" );
ctx.fillText ( " " + Card, 180, 250 );
} else
Card.append ( "Trigésimo
" );
ctx.fillText ( " " + Card, 180, 250 );
FuncUnidade ( );
main ( args );
}
if ( de == 40 ) {
if ( de == 0 || un == 0 ) {
Card.append ( "Quadragésimo" );
ctx.fillText ( " " + Card, 180, 250 );
} else
Card.append ( "Quadragésimo
" );
ctx.fillText ( " " + Card, 180, 250 );
FuncUnidade ( );
main ( args );
}
if ( de == 50 ) {
if ( de == 0 || un == 0 ) {
Card.append ( "Quinquagésimo" );
ctx.fillText ( " " + Card, 180, 250 );
} else
Card.append ( "Quinquagésimo
" );
ctx.fillText ( " " + Card, 180, 250 );
FuncUnidade ( );
main ( args );
}
if ( de == 60 ) {
if ( de == 0 || un == 0 ) {
Card.append ( "Sexagésimo" );
ctx.fillText ( " " + Card, 180, 250 );
} else
Card.append ( "Sexagésimo
" );
ctx.fillText ( " " + Card, 180, 250 );
FuncUnidade ( );
main ( args );
}
if ( de == 70 ) {
if ( de == 0 || un == 0 ) {
Card.append ( "Septuagésimo" );
ctx.fillText ( " " + Card, 180, 250 );
} else
Card.append ( "Septuagésimo
" );
ctx.fillText ( " " + Card, 180, 250 );
FuncUnidade ( );
main ( args );
}
if ( de == 80 ) {
if ( de == 0 || un == 0 ) {
Card.append ( "Octogésimo" );
ctx.fillText ( " " + Card, 180, 250 );
} else
Card.append ( "Octogésimo
" );
ctx.fillText ( " " + Card, 180, 250 );
FuncUnidade ( );
main ( args );
}
if ( de == 90 ) {
if ( de == 0 || un == 0 ) {
Card.append ( "Nonagésimo" );
ctx.fillText ( " " + Card, 180, 250 );
} else
Card.append ( "Nonagésimo
" );
ctx.fillText ( " " + Card, 180, 250 );
FuncUnidade ( );
main ( args );
}
if ( un == 1 ) {
if ( de == 0 || un == 0 ) {
Card.append ( "Primeiro" );
ctx.fillText ( " " + Card, 180, 250 );
main ( args );
} else
Card.append ( "Décimo
primeiro" );
ctx.fillText ( " " + Card, 180, 250 );
main ( args );
}
if ( un == 2 ) {
if ( de == 0 || un == 0 ) {
Card.append ( "Segundo" );
ctx.fillText ( " " + Card, 180, 250 );
main ( args );
} else
Card.append ( "Décimo
segundo" );
ctx.fillText ( " " + Card, 180, 250 );
main ( args );
}
if ( un == 3 ) {
if ( de == 0 || un == 0 ) {
Card.append ( "Terceiro" );
ctx.fillText ( " " + Card, 180, 250 );
main ( args );
} else
Card.append ( "Décimo
terceiro" );
ctx.fillText ( " " + Card, 180, 250 );
main ( args );
}
if ( un == 4 ) {
if ( de == 0 || un == 0 ) {
Card.append ( "Quarto" );
ctx.fillText ( " " + Card, 180, 250 );
main ( args );
} else
Card.append ( "Décimo
quarto" );
ctx.fillText ( " " + Card, 180, 250 );
main ( args );
}
if ( un == 5 ) {
if ( de == 0 || un == 0 ) {
Card.append ( "Quinto" );
ctx.fillText ( " " + Card, 180, 250 );
main ( args );
} else
Card.append ( "Décimo
quinto" );
ctx.fillText ( " " + Card, 180, 250 );
main ( args );
}
if ( un == 6 ) {
if ( de == 0 || un == 0 ) {
Card.append ( "Sexto" );
ctx.fillText ( " " + Card, 180, 250 );
main ( args );
} else
Card.append ( "Décimo
sexto" );
ctx.fillText ( " " + Card, 180, 250 );
main ( args );
}
if ( un == 7 ) {
if ( de == 0 || un == 0 ) {
Card.append ( "Sétimo" );
ctx.fillText ( " " + Card, 180, 250 );
main ( args );
} else
Card.append ( "Décimo sétimo" );
ctx.fillText ( " " + Card, 180, 250 );
main ( args );
}
if ( un == 8 ) {
if ( de == 0 || un == 0 ) {
Card.append ( "Oitavo" );
ctx.fillText ( " " + Card, 180, 250 );
main ( args );
} else
Card.append ( "Décimo
oitavo" );
ctx.fillText ( " " + Card, 180, 250 );
main ( args );
}
if ( un == 9 ) {
if ( de == 0 || un == 0 ) {
Card.append ( "Nono" );
ctx.fillText ( " " + Card, 180, 250 );
main ( args );
} else
Card.append ( "Décimo
nono" );
ctx.fillText ( " " + Card, 180, 250 );
main ( args );
}
if ( de == 10 ) {
if ( de == 0 || un == 0 ) {
Card.append ( "Décimo" );
ctx.fillText ( " " + Card, 180, 250 );
main ( args );
}
}
}
//
/////////////////////////////////////////////////////////////////////////
public static void limitTextField ( TextField textField, int limit ) {
UnaryOperator < Change > textLimitFilter = change -> {
if ( change.isContentChange ( ) )
{
int newLength = change.getControlNewText ( ).length ( );
if ( newLength > limit ) {
String trimmedText = change.getControlNewText ( )
.substring ( 0, limit );
change.setText ( trimmedText );
int oldLength = change.getControlText ( ).length ( );
change.setRange ( 0, oldLength );
}
}
return change;
};
textField.setTextFormatter ( new TextFormatter < Object > (
textLimitFilter ) );
}
//
/////////////////////////////////////////////////////////////////////////
public static int Pesquisa ( String args ) {
hbox_1.setPadding ( new Insets ( 290, 0, 10, 170 ) );
// Abaixo ajustamos o total de colunas do
TextField
textField_1.setPrefColumnCount ( 4 );
textField_1.setPromptText ( "pesq" );
ctx.setFont ( Font.font ( "Tahoma", FontWeight.NORMAL, 12 ) );
ctx.setFill ( Color.BLACK );
ctx.fillText ( "Número", 170, 280 );
textField_1.setOnKeyPressed ( new EventHandler < KeyEvent > ( ) {
@Override
public void handle ( KeyEvent event ) {
limitTextField ( textField_1, 4 );
if ( event.getCode ( ) == KeyCode.ENTER ) {
ctx.setFont ( Font.font ( "Arial", FontWeight.NORMAL, 13 ) );
ctx.setFill ( Color.BLUE );
// convertendo string
para inteiro
n = Integer.parseInt ( textField_1.getText ( ) );
if ( Integer.parseInt ( textField_1.getText ( ) ) >= 0
&& Integer.parseInt ( textField_1.getText ( ) ) < 10000 ) {
Cardinais ( args );
}
}
}
} );
root.getChildren ( ).add ( hbox_1 );
return 0;
}
//
////////////////////////////////////////////////////////////////////////
public void start ( Stage stage ) {
String args = "";
ctx.setFont ( Font.font ( "Arial", FontWeight.NORMAL, 15 ) );
stage.setTitle ( "JAVAFX - DE
DECIMAL PARA ORDINAIS" );
//Criando moldura e dando efeitos
root.setStyle ( "-fx-padding:
5;" + "-fx-border-style: solid inside;"
+ "-fx-border-width:
15;" + "-fx-border-insets: 5;"
+ "-fx-border-radius:
5;" + "-fx-border-color: black;"
+ "-fx-background:
beige;"); ctx.setFill ( Color.RED );
ctx.fillText ( "JAVAFX - DE
DECIMAL PARA ORDINAIS", 180, 50 );
Pesquisa ( args );
stage.setScene ( scene );
root.getChildren ( ).addAll ( canvas );
stage.show ( );
}
//
/////////////////////////////////////////////////////////////////////////
public static void main ( String args ) {
launch ( args );
}
}
Nenhum comentário:
Postar um comentário
Observação: somente um membro deste blog pode postar um comentário.