По разделам

 

Решение задачи File 30


Дан файл целых чисел, содержащий четное количество элементов. Удалить из данного файла вторую половину элементов.

Код (Python)

# -*- coding: utf-8 -*-
import random

def GenerateNumbers(fname):
    N = random.randint(1,10) * 2
    print("N = ",N)
    L = []
    x = random.randrange(1,10)
    L.append(x)
    for i in range(1,N):
        lst_rnd = list(range(1,10))
        lst_rnd.remove(x)
        x = random.choice(lst_rnd)
        L.append(x)
    print(L)
    try:
        f = open(fname, "w")
        try:
            for x in L:
                line = str(x)+"\n"
                f.write(line)
        finally:
            f.close()
    except IOError:
        print('Write error: ',fname)

def CountFile(fname):
#count number of rows in given text-file 
    N = 0
    try:
        with open(fname,'r') as f:
            for line in f:
                N += 1
                #print(N,":",line)
    except IOError:
        print("Open error:",fname)
        return -1
    finally:
        return N

f_input = "file30_in.txt"
f_output = "file30_out.txt"
GenerateNumbers(f_input)
print("Read from:",f_input)
print("Write to:",f_output)

N = CountFile(f_input)
N = int(round(N/2.0))

try:
    with open(f_input, 'r') as f_in, open(f_output, 'w') as f_out:
        for i in range(N):
            line = f_in.readline()
            f_out.write(line)

except IOError:
    print('Open error: ',file1)
									

Код (Pascal)

program File30;
var
 S:String;
 F_in,F_out: File of Integer;
 El,i,len:integer;
begin
  Write('File1: ');
  Readln(S);
  Assign(F_in,S);
  Reset(F_in);
  len:=1;
  while not eof(F_in)do
   begin
    Read(F_in,El);
    inc(len);
   end;
  Close(F_in);
  Reset(F_in);
  Assign(F_out,'~'+S);
  ReWrite(F_out);
  i:=1;
  while ((not eof(F_in)) and (i<= (len div 2))) do
   begin
    Read(F_in,El);
    Write(F_out,El);
    inc(i);
   end;
  Close(F_in);
  Close(F_out);
  Erase(F_in);
  Rename(F_out,S);
end.
									




File. Абрамян
File 1 Просмотров: 4641
File 2 Просмотров: 3922
File 3 Просмотров: 1867
File 4 Просмотров: 2379
File 5 Просмотров: 1791
File 6 Просмотров: 1596
File 7 Просмотров: 1405
File 8 Просмотров: 1862
File 9 Просмотров: 1113
File 10 Просмотров: 1633
File 11 Просмотров: 1144
File 12 Просмотров: 1291
File 13 Просмотров: 1120
File 14 Просмотров: 1008
File 15 Просмотров: 913
File 16 Просмотров: 1154
File 17 Просмотров: 1339
File 18 Просмотров: 937
File 19 Просмотров: 811
File 20 Просмотров: 990
File 21 Просмотров: 842
File 22 Просмотров: 1011
File 23 Просмотров: 871
File 24 Просмотров: 868
File 25 Просмотров: 923
File 26 Просмотров: 900
File 27 Просмотров: 763
File 28 Просмотров: 1017
File 29 Просмотров: 786
File 30 Просмотров: 864
File 31 Просмотров: 769
File 32 Просмотров: 805
File 33 Просмотров: 872
File 34 Просмотров: 880
File 35 Просмотров: 673
File 36 Просмотров: 768
File 37 Просмотров: 651
File 38 Просмотров: 732
File 39 Просмотров: 747
File 40 Просмотров: 654
File 41 Просмотров: 704
File 42 Просмотров: 870
File 43 Просмотров: 649
File 44 Просмотров: 659
File 45 Просмотров: 716
File 46 Просмотров: 628
File 47 Просмотров: 758
File 48 Просмотров: 877
File 49 Просмотров: 769
File 50 Просмотров: 800
File 51 Просмотров: 782
File 52 Просмотров: 805
File 53 Просмотров: 636
File 54 Просмотров: 616
File 55 Просмотров: 689
File 56 Просмотров: 754
File 57 Просмотров: 589
File 58 Просмотров: 736
File 59 Просмотров: 689
File 60 Просмотров: 1192

Комментарии

Чтобы написать комментарии вам нужно войти в систему или зарегистрироваться



Заявка на расчет