Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 08.08.2013, 22:02   #1
proef
Форумчанин
 
Регистрация: 08.06.2013
Сообщений: 133
По умолчанию объясните в чем ошибка

c#
Код:
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;


namespace ConsoleApplication43
{
    class Program
    {

        void finder(char X, char x,FileInfo r)
        {
            string address = File.ReadAllText(r.FullName,Encoding.UTF8);
            int count=0;
            int Count = 0;
            var z = address.ToCharArray();
            Console.WriteLine(z);
            for (int i = 0; i < z.Rank; i++) {
                if (z[i] == x) 
                { count++; } 
                else 
                    if (z[i] == X) { Count++; }

             }

            Console.WriteLine("количество букв {0} и {1} в тексте = {2} и {3} соответственно",X,x,count.ToString(),Count.ToString());
        }


        static void Main(string[] args)
        {
            Program r = new Program();

           
            //найти количество букв а,А в тексте

          
            
           
            FileInfo e = new FileInfo("C:\\Users\\Администратор\\Desktop\\file.txt");
            r.finder('а','А', e);
         
        
            Console.ReadLine();
           
            
        }
    }
}
выводит что количество = 0 в чем проблема ? на си этот алгоритм работает

Последний раз редактировалось proef; 08.08.2013 в 22:04.
proef вне форума
Старый 08.08.2013, 22:54   #2
mMAg
Форумчанин
 
Аватар для mMAg
 
Регистрация: 11.08.2009
Сообщений: 433
По умолчанию

Код:
for (int i = 0; i < z.Rank; i++) {
                if (z[i] == x) 
                { count++; } 
                else 
                    if (z[i] == X) { Count++; }

             }
Rank - это вообще-то размерность массива. Как ни крути, свойство вернёт 1. Так что если первый символ не искомый, результат ожидаемо 0.
mMAg вне форума
Старый 08.08.2013, 23:08   #3
proef
Форумчанин
 
Регистрация: 08.06.2013
Сообщений: 133
По умолчанию

вместо rank length поставить и будет работать разобрался сам)
proef вне форума
Закрытая тема


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Объясните в чем ошибка моя! Npwas Помощь студентам 2 13.12.2011 22:32
Объясните в чем заключается ошибка? код на си Fleiks Общие вопросы C/C++ 5 13.10.2011 18:53
Сумасшедший Label, или объясните чайнику, в чем фокус ProESM Общие вопросы Delphi 6 11.05.2011 19:09
объясните в чем ошибка transformice Microsoft Office Excel 6 01.11.2010 18:34
Объясните откуда ошибка (PHP+MySQL) Lenivecsid Помощь студентам 3 09.01.2010 18:29