22:02

cpp

1. Вводится произвольная строка русского текста, а также одна из букв русского алфавита. Подсчитать, какой процент слов в строке начинается на эту букву. Слова разделены пробелами.
2. Удалить из заданного текста фрагмент, заключенный в скобки.
3. Создать текстовый файл, в который записать в столбик несколько чисел (<20). Составить программу, которая подсчитывала бы количество чисел в файле, а затем дописывала бы в его конец столько случайных чисел, чтобы всего чисел оказалось 20. Кроме того, программа должна найти минимальное и максимальное число в полученном файле.

если кому не лень сделайте плз, просьба актуальна до полуночи (дальше собирусь с мужеством и сам сделаю). Просто мне очень сильно некогда вспоминать как в с++ со строками и файлами работать.

@темы: C++

Комментарии
04.06.2010 в 22:16

3. а сишный код не покатит?
там вводится так, кажется:
FILE *fin;
fin=fopen("in.txt","r+b"); //in.txt - ваш файл с числами
дальше считать, например, целое число а из этого документа: scanf(fin, "%d", &a);

в самом уже конце, перед гетчем и return 0; , закрыть: fclose(fin);

я могу, в принципе, написать программу целиком, но боюсь, так как не профессионал: я пока еще криво пишу)
04.06.2010 в 22:18

В общем, давайте я попробую, но помидорами в меня не кидать)
04.06.2010 в 23:27

писала буквально на листе бумаги, без компилятора под рукой. могут быть синтаксические ошибки

3. программа:
#include < stdio.h>
#include < stdlib.h>
#include < conio.h>
#include < time.h>
#define N 20

int main()
{
int i=0, j, a[N], max, min;
FILE *fin;
fin=fopen("in.txt","r+b");
while (fscanf(fin,"%d\n\r",&a[i])!= EOF) i++; // узнали: i-1 чисел в документе
srand(time(NULL));
for(j=N-1;j > =i-1;j--) {a[j]=rand(); fprintf(fin,"%d\n\r",a[j]);} // заполнили и записали в файл
max=min=a[0];
for(j=0;j < N;j++) if(a[j] > max) max=a[j]; else if(a[j] < min) min=a[j];
fprintf(fin,"maximum - %d\n\rminimum - %d",max,min); // записали в файл максимум и минимум
fclose(fin);
return 0;
}