<?xml version="1.0" encoding="UTF-8"?>
<!-- 
  Copyright (C) 2015 The Android Open Source Project

  Licensed under the Apache License, Version 2.0 (the "License");
  you may not use this file except in compliance with the License.
  You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

  Unless required by applicable law or agreed to in writing, software
  distributed under the License is distributed on an "AS IS" BASIS,
  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  See the License for the specific language governing permissions and
  limitations under the License.
   -->

<resources xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
    <string name="app_name" msgid="1756503303878374382">"Calcolatrice"</string>
    <string name="dec_point" msgid="8920102493070918054">","</string>
    <string name="mode_deg" msgid="1146123354434332479">"deg"</string>
    <string name="mode_rad" msgid="1434228830085760996">"rad"</string>
    <string name="cleared" msgid="3952521190281880880">"cancellati"</string>
    <string name="del" msgid="5878069000864178910">"ce"</string>
    <string name="desc_const_e" msgid="1889187337970539507">"numero di Eulero"</string>
    <string name="desc_const_pi" msgid="5430918714009441655">"pi"</string>
    <string name="desc_dec_point" msgid="5725254504360445023">"virgola"</string>
    <string name="desc_lparen" msgid="8688758170211924916">"parentesi aperta"</string>
    <string name="desc_rparen" msgid="7920608385146151731">"parentesi chiusa"</string>
    <string name="desc_fun_cos" msgid="3787913784504974731">"coseno"</string>
    <string name="desc_fun_ln" msgid="2505119732546227166">"logaritmo naturale"</string>
    <string name="desc_fun_log" msgid="4202230639814060062">"logaritmo"</string>
    <string name="desc_fun_sin" msgid="7425661271929838876">"seno"</string>
    <string name="desc_fun_tan" msgid="3545496562069310036">"tangente"</string>
    <string name="desc_fun_arccos" msgid="7583077865497939123">"coseno inverso"</string>
    <string name="desc_fun_arcsin" msgid="8592309261123302915">"seno inverso"</string>
    <string name="desc_fun_arctan" msgid="6891388393360447455">"tangente inversa"</string>
    <string name="desc_fun_10pow" msgid="3972646467174520812">"dieci elevato alla"</string>
    <string name="desc_fun_exp" msgid="657106837530588390">"funzione esponenziale"</string>
    <string name="desc_op_sqr" msgid="693577095029219627">"al quadrato"</string>
    <string name="desc_op_add" msgid="5539599782598050813">"più"</string>
    <string name="desc_op_div" msgid="3032399266115257498">"diviso"</string>
    <string name="desc_op_fact" msgid="6142780103294179702">"fattoriale"</string>
    <string name="desc_op_mul" msgid="6882122010553947015">"per"</string>
    <string name="desc_op_pct" msgid="2466179646911499434">"percentuale"</string>
    <string name="desc_op_pow" msgid="6010144442344099030">"potenza"</string>
    <string name="desc_op_sqrt" msgid="6882241473601721767">"radice quadrata"</string>
    <string name="desc_op_sub" msgid="2744940875059679129">"meno"</string>
    <string name="desc_mode_deg" msgid="4129831241246511710">"modalità gradi"</string>
    <string name="desc_mode_rad" msgid="730135521908627673">"modalità radiante"</string>
    <string name="desc_switch_deg" msgid="6675211986921592374">"passa ai gradi"</string>
    <string name="desc_switch_rad" msgid="2845875847488919914">"passa ai radianti"</string>
    <string name="desc_eq" msgid="3349320880874699285">"uguale"</string>
    <string name="desc_clr" msgid="737502124268890797">"cancella"</string>
    <string name="desc_del" msgid="7879515781929311432">"elimina"</string>
    <string name="desc_inv_off" msgid="3672218250519616068">"mostra funzioni inverse"</string>
    <string name="desc_inv_on" msgid="2515675590767677178">"nascondi funzioni inverse"</string>
    <string name="desc_formula" msgid="8056588859637585007">"Nessuna formula"</string>
    <string name="desc_result" msgid="1794073190203126821">"Nessun risultato"</string>
    <string name="error_nan" msgid="5674077944929888710">"Non è un numero"</string>
    <string name="error_syntax" msgid="4786987111228645602">"Espressione errata"</string>
    <string name="error_aborted" msgid="3402238176316342537">"Interrotta"</string>
    <string name="error_overflow" msgid="7800547394563434764">"Infinito?"</string>
    <string name="error_zero_divide" msgid="458040988686661801">"Divisione per 0"</string>
    <string name="text_copied_toast" msgid="2104264466812485425">"Testo copiato"</string>
    <string name="cancelled" msgid="2207323593183640994">"Calcolo annullato."</string>
    <string name="timeout" msgid="5461892570729418573">"Il valore potrebbe essere infinito o indefinito."</string>
    <string name="ok_remove_timeout" msgid="8344529153919268011">"Utilizza timeout più lunghi"</string>
    <string name="dismiss" msgid="7872443888515066216">"Chiudi"</string>
    <string name="exact" msgid="2597237880041789948">"(esatto)"</string>
    <string name="approximate" msgid="7117143366610670836">"(±1 nell\'ultima cifra)"</string>
    <string name="menu_leading" msgid="2338520833272667740">"Risultato con cifre iniziali"</string>
    <string name="menu_fraction" msgid="1247477377840252234">"Risultato come frazione"</string>
    <string name="menu_licenses" msgid="1890541368064108592">"Licenze open source"</string>
    <string name="menu_history" msgid="9006222701220105452">"Cronologia"</string>
    <string name="menu_clear_history" msgid="2336526604226069572">"Cancella"</string>
    <string name="title_history" msgid="7820912156315181539">"Cronologia"</string>
    <string name="desc_navigate_up" msgid="6208699569165589623">"Vai in alto"</string>
    <string name="dialog_timeout" msgid="9069768442342329065">"Timeout"</string>
    <string name="dialog_clear" msgid="7137395395908350702">"Cancellare cronologia e memoria?"</string>
    <string name="title_current_expression" msgid="2442754548537900591">"Espressione corrente"</string>
    <string name="no_history" msgid="4331262030447527188">"Nessuna cronologia"</string>
</resources>
