C# :: Aufgabe #282

3 Lösungen Lösungen öffentlich

Information über aktuelle Seitenzahl für Buchdruck

Anfänger - C# von DragStar - 20.03.2020 um 11:48 Uhr
Aus drucktechnischen Gründen sollten Bücher möglichst eine durch 8 teilbare Seitenzahl haben.
Schreiben Sie ein Programm, welches den Autor nach Eingabe der momentanen Seitenzahl darüber informiert, ob diese Forderung erfüllt ist
oder wie viele Seiten er gegebenenfalls weglassen oder hinzufügen sollte.

Lösungen:

vote_ok
von JKooP (1300 Punkte) - 23.03.2020 um 09:05 Uhr
Quellcode ausblenden C#-Code
using System;

namespace CS_Aufgabe_282_Seitenzahl_Buchdruck
{
    class Program
    {
        static void Main()
        {
            while (true)
            {
                Console.Write("Bitte Anzahl Seiten eingeben: ");
                _ = int.TryParse(Console.ReadLine(), out var pages);

                if (pages == 0)
                {
                    Console.WriteLine("Sie müssen einen Zahlenwert groesser '0' eingeben!\n");
                    continue;
                }

                var diff = pages % 8 > 3 ? (pages / 8 + 1) * 8 - pages : -pages % 8;

                if (diff < 0)
                    Console.WriteLine($"Sie müssen {-diff} Seite(n) weniger schreiben!");
                else if (diff == 0)
                    Console.WriteLine($"Passt genau!");
                else
                    Console.WriteLine($"Sie müssen noch {diff} Seite(n) schreiben!");
                break;
            }

        }

    }
}
vote_ok
von JKooP (1300 Punkte) - 23.03.2020 um 12:58 Uhr
Quellcode ausblenden C#-Code
using System;

namespace CS_Aufgabe_282_Seitenzahl_Buchdruck
{
    class Program
    {
        static void Main()
        {
            while (true)
            {
                Console.Write("Bitte Anzahl Seiten eingeben: ");
                _ = int.TryParse(Console.ReadLine(), out var pages);

                if (pages == 0)
                {
                    Console.WriteLine("Sie müssen einen Zahlenwert groesser '0' eingeben!\n");
                    continue;
                }

                var diff = pages % 8 > 3 ? (pages / 8 + 1) * 8 - pages : -pages % 8;

                if (diff < 0)
                    Console.WriteLine($"Sie müssen {-diff} Seite(n) weniger schreiben!");
                else if (diff == 0)
                    Console.WriteLine($"Passt genau!");
                else
                    Console.WriteLine($"Sie müssen noch {diff} Seite(n) schreiben!");
                break;
            }

        }

    }
}
vote_ok
von Waldgeist (1010 Punkte) - 23.03.2020 um 20:54 Uhr
Hallo,

ich habe ein WindowsForms Programm geschrieben.
Das ganze findet Ihr als Zip Datei im Anhang.

Hier der Code:

Quellcode ausblenden C#-Code
using System;
using System.Windows.Forms;

namespace Buchdruck
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            int seitenzahl = Convert.ToInt32(seitenzahlbox.Text);
            int differenz = 0;
            int hinzufügen = 0;

            if (seitenzahl % 8 == 0)
            {
                ergebnisbox.Text = "Ihre Seitenzahl ist durch 8 teilbar";
            }
            else if ((seitenzahl / 8) < 1)
            {
                differenz = 8 - seitenzahl;
                ergebnisbox.Text = "Sie sollten " + differenz.ToString() + " Seiten hinzufügen";
            }
            else
            {
                differenz = (seitenzahl % 8);
                hinzufügen = 8 - differenz;

                ergebnisbox.Text = "Sie sollten " + differenz.ToString() + " Seiten weglassen, oder " + hinzufügen.ToString() + " Seiten hinzufügen.";
            }
        }
    }
}