Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
mirax
0 / 0 / 0
Регистрация: 05.10.2012
Сообщений: 13
#1

Если в строке есть хоть один ноль - вывести в файл output.txt "YES", иначе вывести "NO"; - C++

05.10.2012, 16:12. Просмотров 677. Ответов 5
Метки нет (Все метки)

Задача. В файле input.txt содержится неприрывная строка нулей и единиц. Если в строке есть хоть один ноль - вывести в файл output.txt "YES", иначе вывести "NO";
Ниже то, что пробовал, но не получаеться ничего...
Помогите с кодом.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <stdio.h>
#include <string>
using namespace std;
FILE *f1,*f2;
char s[1000];
 
int a;
int main()
{
f1=fopen("input.txt","r+");
f2=fopen("output.txt","w+");    
fscanf(f2,"%s",&s);
for (int i=0; i<strlen(s); i++)
{
if(s=="0") a++;  
}
if(a>0) fprintf(f2,"%s","YES");
else fprintf(f2,"%s","NO");
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.10.2012, 16:12
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Если в строке есть хоть один ноль - вывести в файл output.txt "YES", иначе вывести "NO"; (C++):

Вывести текст файла, заменив цифры от 0 до 9 на слова "ноль", "один"."девять", начиная каждое предложение с новой строки - C++
Написать программу, которая считывает текст из файла и выводит его на экран, заменив цифры от 0 до 9 на слова &quot;ноль&quot;, &quot;один&quot;...&quot;девять&quot;,...

Работа с файлами (вывести в текстовый файл "g.txt" любую цифру из исходного файла "f.txt" с сохранением строгого порядка) - C++
Помогите с задачей. Надо вывести в текстовый файл &quot;g.txt&quot; любую цифру из исходного файла &quot;f.txt&quot; с сохранением строгого...

Вывести решения уравнения, если их число конечно, "NO", если решений нет, и "INF", если их бесконечно много - C++
Задача с условным оператором. Решить в целых числах уравнение ax + b = 0. Входные данные Вводятся 2 целых числа: a и b. ...

В зависимости от времени года "весна", "лето", "осень", "зима" определить погоду "тепло", "жарко", "холодно", "очень холодно" - C++
В зависимости от времени года &quot;весна&quot;, &quot;лето&quot;, &quot;осень&quot;, &quot;зима&quot; определить погоду &quot;тепло&quot;, &quot;жарко&quot;, &quot;холодно&quot;, &quot;очень холодно&quot;. Я так...

дано четырехзначное число. если сумма первых 2 цифр=сумме 2 последних, написать "yes", иначе "no" - C++
Вот попробовал написать код но ошибку выдает: #include &lt;iostream.h&gt; #include &lt;conio.h&gt; #include &lt;stdlib.h&gt; int main() { ...

Даны две строки. Если они начинаются с одинаковых символов, то напечатать "ДА", иначе - "НЕТ" - C++
Даны две строки. Если они начинаются с одинаковых символов, то напечатать &quot;ДА&quot;, иначе - &quot;НЕТ&quot;. (5)

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Кот Ангенс
317 / 267 / 38
Регистрация: 24.05.2012
Сообщений: 629
05.10.2012, 16:31 #2
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <stdio.h>
 
int main() {
    FILE* f = fopen("input.txt", "r");
    short c;
    while ((c = getc(f)) != EOF)
        if (c == '0') {
            fclose(f);
            f = fopen("output.txt", "w");
            putc('Y', f);
            putc('E', f);
            putc('S', f);
            fclose(f);
            return 0;
        }
    fclose(f);
    f = fopen("output.txt", "w");
    putc('N', f);
    putc('O', f);
    fclose(f);
    return 1;
}
valeriikozlov
Эксперт C++
4670 / 2496 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
05.10.2012, 17:01 #3
Цитата Сообщение от mirax Посмотреть сообщение
Ниже то, что пробовал, но не получаеться ничего...
Внимательней будьте:

Цитата Сообщение от mirax Посмотреть сообщение
В файле input.txt содержится неприрывная строка нулей и единиц.
а Вы считываете из файла output.txt (см комментарии):

Цитата Сообщение от mirax Посмотреть сообщение
C++
1
2
f2=fopen("output.txt","w+"); 
fscanf(f2,"%s",&s);// почему f2 ?
mirax
0 / 0 / 0
Регистрация: 05.10.2012
Сообщений: 13
05.10.2012, 19:57  [ТС] #4
Спасибо. Все получилось.
Насчет считывания с f2, глюканулу я чего-то. Но если и с f1 считывать, то там код тоже не верный.
valeriikozlov
Эксперт C++
4670 / 2496 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
05.10.2012, 20:20 #5
есть еще одна ошибка.
вот это:

Цитата Сообщение от mirax Посмотреть сообщение
C++
1
if(s=="0") a++;
заменить на:
C++
1
if(s[i]=='0') a++;
mirax
0 / 0 / 0
Регистрация: 05.10.2012
Сообщений: 13
06.10.2012, 00:28  [ТС] #6
Цитата Сообщение от valeriikozlov Посмотреть сообщение
есть еще одна ошибка.
вот это:


заменить на:
C++
1
if(s[i]=='0') a++;
Спасибо, вроде и мой код стал работать. Без ошибок, если кому понадобиться.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <stdio.h>
#include <string>
using namespace std;
FILE *f1,*f2;
char s[1000];
 
int a;
int main()
{
f1=fopen("input.txt","r+");
f2=fopen("output.txt","w+");    
fscanf(f1,"%s",&s);
a=0;
for (int i=0; i<strlen(s); i++)
{
if(s[i] == '0') a++;  
}
if(a>0) fprintf(f2,"%s","YES");
else fprintf(f2,"%s","NO");
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
06.10.2012, 00:28
Привет! Вот еще темы с ответами:

Вывести числа в порядке возрастания, по одному в строке. Если между M и N нет простых - вывести "Absent" - C++
Снова всем здравствуйте! Вот до боли знакомая задача, но на промежутке функция работает не оптимально, хотя сама функция оптимизирована....

Перегрузка функций "ввести в поток", "вывести с потока", "умножить вектор на число" - C++
Подскажите пожалуйста, как убрать ошибки с этой программы? (делала перегрузку &quot;ввести в поток&quot; и &quot;вывести с потока&quot;, а также &quot;умножить...

Вывести на экран монитора число с наименованием "год","года", "лет" - C++
Прошу прогу в С++. Дано натуральное число n (n&lt;=100), определяющее в годах возраст человека. Составить программу, по которой на экран...

Для каждого элемента последовательности вывести на экран "true" если число чётное и "false" если число нечёное - C++
Задана последовательность из 5 цифр. Для каждого числа вывести на экран &quot;true&quot; - если число четное и &quot;false&quot; - если не четное. ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
06.10.2012, 00:28
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru