İPUCU

Java Object Oriented Programming temeline dayanan, çok işlevli, step by step işleyen dilin dökümanlarının paylaşım alanı.

Seçenekler

Java | Örnek Programlar

Alzhe01 - ait Kullanıcı Resmi (Avatar)
Siber İstihbarat Uzmanı
Üyelik tarihi:
12/2017
Nereden:
10ehzlA
Mesajlar:
632
Konular:
104
Teşekkür (Etti):
136
Teşekkür (Aldı):
71
Ticaret:
(0) %
18-06-2019 07:08
#1
Java | Örnek Programlar
ÖNCEKİ KONU İÇİN TIKLA

Java da Armstrong Sayı Bulma

Sayının basamaklarındaki rakamların küpleri toplamı kendisine eşit olan sayılara “Armstrong sayı” denir.

Örneğin; 371=3^3 + 7^3 + 1^3 = 27 + 343 + 1 = 371



JavaArmstrongSayi.java
Kod:

import java.math.*;
import java.util.Scanner;
/**
 *
 *    @author Alzhe01
 */

public class JavaArmstrongSayi {
    public static vo id main(String args[]) {
        Scanner scan = new Scanner(System.in);
        System.out.println("Sayi Giriniz : ");
        int deger = scan.nextInt();
        int n = deger;
        int kalan = 0;
        int yenideger = 0;
        int length = String.valueOf(deger).length();
        
        for(int i=1;i<=length;i++){
            kalan = deger%10;
            yenideger = yenideger + (int)Math.pow(kalan,length);
            deger = deger/10;
        }
        
        if(yenideger == n){
            System.out.println("Sayi Armstrong Sayidir : " + n + " = " + yenideger);
        }else{
            System.out.println("Sayi Armstrong Sayi Degildir");
        }
    }
}


Çıktısı:





Sunucu Mesajlaşma Programı

sunucu.java

Kod:
import java.io.*; 
import java.net.*;
/**
 *
 *    @author Alzhe01
 */
public class sunucu {
    public static vo id main(String args[]) {
        ServerSocket yankisunucu = null;
        String line;
        DataInputStream is; 
        PrintStream os; 
        Socket istemcisoket = null;
        try { 
            yankisunucu = new ServerSocket(1234);
        }
        catch (IOException e) {
            System.out.println("sunucu acilma hatasi");
        }
        try {
            istemcisoket = yankisunucu.accept();
            is = new DataInputStream(istemcisoket.getInputStream());
            os = new PrintStream(istemcisoket.getOutputStream());
            while (true) {
                line = is. readLine(); os.println("Sunucudan gelen: "+ line);
            }
        }
        catch (IOException e) {
            System.out.println(e) ;
        }
    }
}

istemci.java

Kod:
import java.io.*; 
import java.net.*; 
/**
 *
 *    @author Alzhe01
 */
public class istemci { 
    public static vo id main(String[] args) throws IOException {
        Socket istemciSoket = null; 
        DataInputStream is = null; 
        PrintStream os = null; 
        DataInputStream inputLine =null; 
        try {
            istemciSoket = new Socket("127.0.0.1", 1234);
            os = new PrintStream( istemciSoket.getOutputStream());
            is = new DataInputStream( istemciSoket.getInputStream());
            inputLine = new DataInputStream( new BufferedInputStream( System.in));
        } catch (UnknownHostException e) {
            System.err.println("Sunucu bulamama hatasi"); 
        } catch (IOException e) {
            System.err.println("Sunucu baglanma hatasi");
        }
        if (istemciSoket != null && os != null && is != null) { 
            try {
                String satir; 
                os.println(inputLine.readLine());
                while ((satir = is.readLine()) != null) {
                    System.out.println(satir);
                    if (satir.indexOf("ACK") != -1) {
                        break;
                    }
            os.println(inputLine.readLine());
                }
                os.close();
                is.close();
                istemciSoket.close(); 
            }catch (UnknownHostException e) {
                System.err.println("Sunucu bulamama hatasi"); 
            }catch (IOException e) {
                System.err.println("Sunucu baglanma hatasi");
            }
        }
    }
}


Çıktısı:





NOT: sunucu.java , istemci.java'dan önce çalıştırılmalıdır. Aksi takdirde hata alabilirsiniz.




İş parçacıklarına örnek uygulama. Robotların çalışması:


UyurGezer.java

Kod:
/**
 *
 *    @author Alzhe01
 */
public class UyurGezer {
    public static vo id main(String args[]) {
        Robot r1 = new Robot("Robot1");
        Robot r2 = new Robot("Robot2");
        Robot r3 = new Robot("Robot3");
        r1.start();
        r2.start();
        r3.start();
    }
}
Robot.java

Kod:
/**
 *
 *    @author Alzhe01
 */
class Robot extends Thread {
    public Robot(String isim) {
        super(isim);
    }
           @override
        public vo id run() {
            try {
                String isim = this.getName();
                for ( int i=0; i<5; i++ ) {
                    if ( ( isim.equals("Robot1") && (i==3) ) ) {
                        System.out.println(isim+"-> uyutuluyor");
                        Thread.sleep(100);
                    } else if ( (isim.equals("Robot2") && (i==2) ) ) {
                        System.out.println(isim+"-> uyutuluyor");
                        Thread.sleep(150);
                    } else if ( (isim.equals("Robot3") && ( i==4)) ) {
                        System.out.println(isim+"-> uyutuluyor");
                        Thread.sleep(250);
                    }
                    System.out.println(isim+"-->"+i);
                }
            } catch ( InterruptedException iEx ) {
                System.out.println("Hata olustu -->"+ iEx);
            }
        }
}
Çıktısı:



Çalışma mantığına ilişkin olarak resim:






Kelime Bulma Oyunu


kelimebul.java


Kod:
/**
 *
 *    @author Alzhe01
 */
import java.io.*;
public class kelimebul{
        public static vo id main(String args[])throws IOException{
                String kelime = "alzhe";int i,tahmin=0,anahtar=0,dogru=0;
                String eldevar[] = new String[kelime.length()];

                System.out.println("Kelimeyi bulmak için 5 yanlış hakkınız var.");
                BufferedReader klavye = new BufferedReader(new InputStreamReader(System.in));

                for (i = 0; i < kelime.length(); i++){
                        eldevar[i] = "_ ";

                }

                finish:
                while(tahmin<6){
                        System.out.println("Bir harf giriniz (Kalan hakkiniz "+(5 -tahmin) +") : ");
                        String harf = klavye.readLine();
                        tahmin++;
                        for (i = 0; i < kelime.length(); i++){
                                if (kelime.charAt(i) == harf.charAt(0)){
                                        eldevar[i] = harf+" ";
                                        anahtar = 1;
                                        dogru++;
                                        if (dogru == kelime.length()) { 
                                            System.out.println("kelime " +kelime+"...Tebrikler..."); break finish; 
                                        }
                                }
                        }
                        if (anahtar == 1) { 
                            anahtar = 0; 
                            tahmin--; 
                        }
                        for (i = 0; i < kelime.length(); i++){
                                System.out.print(eldevar[i]);
                        }
                        System.out.println();
                }
                if (dogru != kelime.length()) { 
                    System.out.println("Uzgunum... Dogru yanit " + kelime); 
                }
        }
}
Buradaki kelimemiz alzhe. Ona göre çıktısı:





Miladi Takvim Uygulaması

TakvimProgrami.java

Kod:
import javax.swing.*;
import javax.swing.table.*;
import java.awt.*;
import java.awt.event.*;
import java.util.*;
/**
 *
 *    @author Alzhe01
 */
public class TakvimProgrami{
    static JLabel lblMonth, lblYear;
    static JButton btnPrev, btnNext;
    static JTable tblCalendar;
    static JComboBox cmbYear;
    static JFrame frmMain;
    static Container pane;
    static DefaultTableModel mtblCalendar;
    static JScrollPane stblCalendar;
    static JPanel pnlCalendar;
    static int realYear, realMonth, realDay, currentYear, currentMonth;
    public static vo id main (String args[]){
        try {UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());}
        catch (ClassNotFoundException | InstantiationException | IllegalAccessException | UnsupportedLookAndFeelException e) {}
        frmMain = new JFrame ("Miladi Takvim");
        frmMain.setSize(330, 375);
        pane = frmMain.getContentPane();
        pane.setLayout(null);
        frmMain.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        lblMonth = new JLabel ("Ocak");
        lblYear = new JLabel ("Yılı seç:");
        cmbYear = new JComboBox();
        btnPrev = new JButton ("<<");
        btnNext = new JButton (">>");
        mtblCalendar = new DefaultTableModel(){public boolean isCellEditable(int rowIndex, int mColIndex){return false;}};
        tblCalendar = new JTable(mtblCalendar);
        stblCalendar = new JScrollPane(tblCalendar);
        pnlCalendar = new JPanel(null);
        pnlCalendar.setBorder(BorderFactory.createTitledBorder("Takvim"));
        btnPrev.addActionListener(new btnPrev_Action());
        btnNext.addActionListener(new btnNext_Action());
        cmbYear.addActionListener(new cmbYear_Action());
        pane.add(pnlCalendar);
        pnlCalendar.add(lblMonth);
        pnlCalendar.add(lblYear);
        pnlCalendar.add(cmbYear);
        pnlCalendar.add(btnPrev);
        pnlCalendar.add(btnNext);
        pnlCalendar.add(stblCalendar);
        pnlCalendar.setBounds(0, 0, 320, 335);
        lblMonth.setBounds(160-lblMonth.getPreferredSize().width/2, 25, 100, 25);
        lblYear.setBounds(10, 305, 80, 20);
        cmbYear.setBounds(230, 305, 80, 20);
        btnPrev.setBounds(10, 25, 50, 25);
        btnNext.setBounds(260, 25, 50, 25);
        stblCalendar.setBounds(10, 50, 300, 250);
        frmMain.setResizable(false);
        frmMain.setVisible(true);
        GregorianCalendar cal = new GregorianCalendar();
        realDay = cal.get(GregorianCalendar.DAY_OF_MONTH);
        realMonth = cal.get(GregorianCalendar.MONTH); 
        realYear = cal.get(GregorianCalendar.YEAR); 
        currentMonth = realMonth; 
        currentYear = realYear;
        String[] headers = {"Pzr", "Pzt", "Sal", "Çrş", "Prş", "Cum", "Cmt"};
        for (int i=0; i<7; i++){
            mtblCalendar.addColumn(headers[i]);
        }
        tblCalendar.getParent().setBackground(tblCalendar.getBackground());
        tblCalendar.getTableHeader().setResizingAllowed(false);
        tblCalendar.getTableHeader().setReorderingAllowed(false);
        tblCalendar.setColumnSelectionAllowed(true);
        tblCalendar.setRowSelectionAllowed(true);
        tblCalendar.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
        tblCalendar.setRowHeight(38);
        mtblCalendar.setColumnCount(7);
        mtblCalendar.setRowCount(6);
        for (int i=realYear-100; i<=realYear+100; i++){
            cmbYear.addItem(String.valueOf(i));
        }
        ref reshCalendar(realMonth, realYear);
    }
    public static vo id ref reshCalendar(int month, int year){
        String[] months =  {"Ocak", "Şubat", "Mart", "Nisan", "Mayıs", "Haziran", "Temmuz", "Ağustos", "Eylül", "Ekim", "Kasım", "Aralık"};
        int nod, som;
        btnPrev.setEnabled(true);
        btnNext.setEnabled(true);
        if (month == 0 && year <= realYear-10){btnPrev.setEnabled(false);}
        if (month == 11 && year >= realYear+100){btnNext.setEnabled(false);}
        lblMonth.setText(months[month]); 
        lblMonth.setBounds(160-lblMonth.getPreferredSize().width/2, 25, 180, 25); 
        cmbYear.setSelectedItem(String.valueOf(year));
        for (int i=0; i<6; i++){
            for (int j=0; j<7; j++){
                mtblCalendar.setValueAt(null, i, j);
            }
        }
        GregorianCalendar cal = new GregorianCalendar(year, month, 1);
        nod = cal.getActualMaximum(GregorianCalendar.DAY_OF_MONTH);
        som = cal.get(GregorianCalendar.DAY_OF_WEEK);
        for (int i=1; i<=nod; i++){
            int row = (i+som-2)/7;
            int column  =  (i+som-2)%7;
            mtblCalendar.setValueAt(i, row, column);
        }
        tblCalendar.setDefaultRenderer(tblCalendar.getColumnClass(0), new tblCalendarRenderer());
    }
    static class tblCalendarRenderer extends DefaultTableCellRenderer{
           @override
        public Component getTableCellRendererComponent (JTable table, Object value, boolean selected, boolean focused, int row, int column){
            super.getTableCellRendererComponent(table, value, selected, focused, row, column);
            if (column == 0 || column == 6){ 
                setBackground(new Color(255, 220, 220));
            }
            else{
                setBackground(new Color(255, 255, 255));
            }
            if (value != null){
                if (Integer.parseInt(value.toString()) == realDay && currentMonth == realMonth && currentYear == realYear){
                    setBackground(new Color(220, 220, 255));
                }
            }
            setBorder(null);
            setForeground(Color.black);
            return this;  
        }
    }

    static class btnPrev_Action implements ActionListener{
           @override
        public vo id actionPerformed (ActionEvent e){
            if (currentMonth == 0){
                currentMonth = 11;
                currentYear -= 1;
            }
            else{
                currentMonth -= 1;
            }
            ref reshCalendar(currentMonth, currentYear);
        }
    }
    static class btnNext_Action implements ActionListener{
           @override
        public vo id actionPerformed (ActionEvent e){
            if (currentMonth == 11){
                currentMonth = 0;
                currentYear += 1;
            }
            else{
                currentMonth += 1;
            }
            ref reshCalendar(currentMonth, currentYear);
        }
    }
    static class cmbYear_Action implements ActionListener{
           @override
        public vo id actionPerformed (ActionEvent e){
            if (cmbYear.getSelectedItem() != null){
                String b = cmbYear.getSelectedItem().toString();
                currentYear = Integer.parseInt(b);
                ref reshCalendar(currentMonth, currentYear);
            }
        }
    }
}
Çıktısı:




Programlar veya Java ile ilgili sorularınızı sorabilirsiniz. Elimden geldiğince yardımcı olurum.
---------------------
🔥Ateş Ediyoruz Elâleme🔥
Konu Alzhe01 tarafından (18-06-2019 11:32 Saat 11:32 ) değiştirilmiştir.
Posew7, KARA ALP, Mamilost, CassPort, JCode Teşekkür etti.
KARA ALP - ait Kullanıcı Resmi (Avatar)
Siber İstihbarat Uzmanı
Üyelik tarihi:
09/2018
Nereden:
gizli bilgi
Mesajlar:
808
Konular:
72
Teşekkür (Etti):
119
Teşekkür (Aldı):
177
Ticaret:
(0) %
19-06-2019 16:47
#2
Güzel ve kapsamlı olmuş peki böyle bi işlemleri Android üzerinden kodlama programlarıyla yapmak mümkünmüdür
---------------------
illegal diye birşey yoktur yakalanmadığın sürece
Liserjik - ait Kullanıcı Resmi (Avatar)
İhbar Hattı Görevlisi
Üyelik tarihi:
08/2018
Nereden:
268,3 g/mol
Yaş:
1
Mesajlar:
1.048
Konular:
112
Teşekkür (Etti):
105
Teşekkür (Aldı):
294
Ticaret:
(0) %
19-06-2019 18:51
#3
Alıntı:
KARA ALP´isimli üyeden Alıntı Mesajı göster
Güzel ve kapsamlı olmuş peki böyle bi işlemleri Android üzerinden kodlama programlarıyla yapmak mümkünmüdür
Java N-IDE kullanabilirsiniz.
--------------------- 5 & 9 homie, rest in peace


* VITALLION *
Alzhe01 - ait Kullanıcı Resmi (Avatar)
Siber İstihbarat Uzmanı
Üyelik tarihi:
12/2017
Nereden:
10ehzlA
Mesajlar:
632
Konular:
104
Teşekkür (Etti):
136
Teşekkür (Aldı):
71
Ticaret:
(0) %
19-06-2019 21:46
#4
Alıntı:
KARA ALP´isimli üyeden Alıntı Mesajı göster
Güzel ve kapsamlı olmuş peki böyle bi işlemleri Android üzerinden kodlama programlarıyla yapmak mümkünmüdür

@Liserjik 'in dediği program gibi birkaç program mevcut. Fakat belirli işlemleri yapabilirsin sadece. Ekrana yazı yazdırma, döngülerle işlemler vs.
Gelişmiş programlar için (miladi takvim programı ve bir çok applet programları vs) bilgisayar gerekli oluyor, Androidte maalesef yok.
---------------------
🔥Ateş Ediyoruz Elâleme🔥
Konu Alzhe01 tarafından (20-06-2019 09:16 Saat 09:16 ) değiştirilmiştir.

Bookmarks


« Önceki Konu | Sonraki Konu »
Seçenekler

Yetkileriniz
Sizin Yeni Konu Acma Yetkiniz var yok
You may not post replies
Sizin eklenti yükleme yetkiniz yok
You may not edit your posts

BB code is Açık
Smileler Açık
[IMG] Kodları Açık
HTML-Kodları Kapalı
Trackbacks are Kapalı
Pingbacks are Kapalı
Refbacks are Kapalı