Tfe

Ongi etorri tfe-ren webgunera...

Old stuff/ecole_etude_fac_de_pau/licence_2/calculatrice/bin2.pl

(Deskargatu)
#!/usr/bin/perl -w
#
#   CalBinaire
#   Programme Perl par Sergio Muriel
#   Etudiant Licence informatique (L2)
#   Universite de Pau (64) France
#
#
#   This program is free software; you can redistribute it and/or modify
#   it under the terms of the GNU General Public License as published by
#   the Free Software Foundation; either version 2 of the License, or
#   (at your option) any later version.
#   
#   This program is distributed in the hope that it will be useful,
#   but WITHOUT ANY WARRANTY; without even the implied warranty of
#   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
#   GNU General Public License for more details.
#
#   You should have received a copy of the GNU General Public License
#   along with this program; if not, write to the Free Software
#   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
#
################################################################################/     




our $ans = "0"x32;
our @func = (undef,"conv_x","add_x","sous_x","mul_x","div_x",sub {exit});
do "func.pl" or die $!;
do "operations.pl" or die $!;


sub conv_x()
{
    &clear;                                                                                                                                                              
    my $num = entrer_int();                                                                                                                                              
    $ans = int2bin($num);                                                                                                                                                
}	



sub add_x()
{
    &clear;
    print "Additionner $ans avec : \n";
    print "\t1) Chiffre binaire \n";
    print "\t2) Chiffre Entier (converti ensuite en binaire\n";
    print "\t3) Retour\n";
    
    $choix = "";
    do
    {
	print "Entrer une valeur entre 1 et 3 : ";
	$choix= <STDIN>;
	chomp($choix);
    }
    until ($choix eq "1" or $choix eq "2" or $choix eq "3");
    print "CHOIX : $choix\n";
    if ($choix == 3) { return $ans; }
    my $ib;
    if ($choix ==1)
    {    
	$ib = entrer_bin();
        $ib = normalise($ib);
    }
    elsif ($choix ==2)
    {
    $ib = entrer_int();                                                                                                                                              
    $ib = int2bin($ib);                              
    }

    &clear;
    print "\t$ans \n+\t$ib\n";
    print "_"x40;
    print "\n";
    $ans = add($ans,$ib);    
}

sub sous_x()
{
    &clear;
    print "Soustraire $ans avec : \n";
    print "\t1) Chiffre binaire \n";
    print "\t2) Chiffre Entier (converti ensuite en binaire\n";
    print "\t3) Retour\n";
    
    $choix = "";
    do
    {
	print "Entrer une valeur entre 1 et 3 : ";
	$choix= <STDIN>;
	chomp($choix);
    }
    until ($choix eq "1" or $choix eq "2" or $choix eq "3");
    print "CHOIX : $choix\n";
    if ($choix == 3) { return $ans; }
    my $ib;
    if ($choix ==1)
    {    
	$ib = entrer_bin();
        $ib = normalise($ib);
    }
    elsif ($choix ==2)
    {
    $ib = entrer_int();                                                                                                                                              
    $ib = int2bin($ib);                              
    }

    &clear;
    print "\t$ans \n-\t$ib\n";
    print "_"x40;
    print "\n";
    $ans = sous($ans,$ib);    
}


&clear();
&menu();